Bonjour à tous, avant tout sachez que je suis une truffe en php mais j'en ai malheureusement besoin pour me simplifier la vie. J'ai donc l'habitude de pomper à droite et à gauche des petits bouts de code que j'adapte jusqu'à ce que ça marche pour que ça corresponde à mes besoins.
Possédant 2 sites et plusieurs bases de données j'en ai marre de rentrer certaines données en passant par phpmyadmin. J'aimerai passer par un formulaire pour certaines taches simples. J'ai donc décidé de me lancer dans le formulaire à remplir. Je suis en PHP 7.2
J'ai créé pour me faire la main une nouvelle base avec seulement 5 champs :
1 image_id Primaire int(4) AUTO_INCREMENT
2 titre varchar(500) latin1_general_ci
3 description varchar(600) latin1_general_ci
4 nom_image varchar(50) latin1_general_ci
5 legende_image varchar(200) latin1_general_ci
6 en_savoir_plus varchar(500) latin1_general_ci
Puis dans une page php j'ai mis celà :
<form name="inscription" method="post" action="interface-image3.php">
Titre : <input type="varchar" name="titre"/> <br/>
Description : <input type="varchar" name="description"/> <br/>
nom_image : <input type="varchar" name="nom_image"/> <br/>
legende_image : <input type="varchar" name="legende_image"/><br/>
en_savoir_plus : <input type="varchar" name="en_savoir_plus"/><br/>
<input type="submit" name="valider" value="OK"/>
</form>
<?php
if (isset ($_POST['valider'])){
//On récupère les valeurs entrées par l'utilisateur :
$titre=$_POST['titre'];
$description=$_POST['description'];
$nom_image=$_POST['nom_image'];
$legende_image=$_POST['legende_image'];
$en_savoir_plus=$_POST['en_savoir_plus'];
//On se connecte
$connect = mysqli_connect('xxxxxxxxxxxx', 'xxxxxxx', 'xxxxxxxxxx', 'xxxxxxxxxx');
if (mysqli_error()) {
die('<p>La connexion au serveur MySQL a échoué: '.mysqli_error().'</p>');
} else {
echo '<p>Connexion au serveur MySQL établie avec succès.</p >';
}
//On prépare la commande sql d'insertion
$sql = 'INSERT INTO image_a-la-une(titre, description,nom_image, legende_image, en_savoir_plus) VALUES ("'.$titre.'","'.$description.'","'.$nom_image.'","'.$legende_image.'","'.$en_savoir_plus.'")';
/*on lance la commande (mysql_query) et au cas où,
on rédige un petit message d'erreur si la requête ne passe pas (or die)
(Message qui intègrera les causes d'erreur sql)*/
mysqli_query ($sql) or die ('Erreur SQL !'.$sql.'<br />'.mysqli_error());
// on ferme la connexion
mysqli_close();
}
?>
Et voila mon problème lorsque je rentre des données
Connexion au serveur MySQL établie avec succès.
Erreur SQL !INSERT INTO image_a-la-une(titre, description,nom_image, legende_image, en_savoir_plus) VALUES ("dsfsd","xgdfgb","regcbc","dht,;i;v","fnccnc")
Merci pour votre aide
Modifié par Pensae (26 Sep 2019 - 19:19)
Possédant 2 sites et plusieurs bases de données j'en ai marre de rentrer certaines données en passant par phpmyadmin. J'aimerai passer par un formulaire pour certaines taches simples. J'ai donc décidé de me lancer dans le formulaire à remplir. Je suis en PHP 7.2
J'ai créé pour me faire la main une nouvelle base avec seulement 5 champs :
1 image_id Primaire int(4) AUTO_INCREMENT
2 titre varchar(500) latin1_general_ci
3 description varchar(600) latin1_general_ci
4 nom_image varchar(50) latin1_general_ci
5 legende_image varchar(200) latin1_general_ci
6 en_savoir_plus varchar(500) latin1_general_ci
Puis dans une page php j'ai mis celà :
<form name="inscription" method="post" action="interface-image3.php">
Titre : <input type="varchar" name="titre"/> <br/>
Description : <input type="varchar" name="description"/> <br/>
nom_image : <input type="varchar" name="nom_image"/> <br/>
legende_image : <input type="varchar" name="legende_image"/><br/>
en_savoir_plus : <input type="varchar" name="en_savoir_plus"/><br/>
<input type="submit" name="valider" value="OK"/>
</form>
<?php
if (isset ($_POST['valider'])){
//On récupère les valeurs entrées par l'utilisateur :
$titre=$_POST['titre'];
$description=$_POST['description'];
$nom_image=$_POST['nom_image'];
$legende_image=$_POST['legende_image'];
$en_savoir_plus=$_POST['en_savoir_plus'];
//On se connecte
$connect = mysqli_connect('xxxxxxxxxxxx', 'xxxxxxx', 'xxxxxxxxxx', 'xxxxxxxxxx');
if (mysqli_error()) {
die('<p>La connexion au serveur MySQL a échoué: '.mysqli_error().'</p>');
} else {
echo '<p>Connexion au serveur MySQL établie avec succès.</p >';
}
//On prépare la commande sql d'insertion
$sql = 'INSERT INTO image_a-la-une(titre, description,nom_image, legende_image, en_savoir_plus) VALUES ("'.$titre.'","'.$description.'","'.$nom_image.'","'.$legende_image.'","'.$en_savoir_plus.'")';
/*on lance la commande (mysql_query) et au cas où,
on rédige un petit message d'erreur si la requête ne passe pas (or die)
(Message qui intègrera les causes d'erreur sql)*/
mysqli_query ($sql) or die ('Erreur SQL !'.$sql.'<br />'.mysqli_error());
// on ferme la connexion
mysqli_close();
}
?>
Et voila mon problème lorsque je rentre des données
Connexion au serveur MySQL établie avec succès.
Erreur SQL !INSERT INTO image_a-la-une(titre, description,nom_image, legende_image, en_savoir_plus) VALUES ("dsfsd","xgdfgb","regcbc","dht,;i;v","fnccnc")
Merci pour votre aide
Modifié par Pensae (26 Sep 2019 - 19:19)