Php / MySql ... enregistrement dans ma base
Résolu
lalouviere84
Messages postés
123
Statut
Membre
-
lalouviere84 Messages postés 123 Statut Membre -
lalouviere84 Messages postés 123 Statut Membre -
Bonsoir à tous,
Voila mon soucis...
J'ai une BDD mysql, je voudrais y stocker des news dans 3 champs (titre, date, texte) avec un champ id en autoincrément....
Jusque la tout vas bien !
J'ai fait un formulaire pour remplir les champs :
et un fichier de traitement du formulaire qui doit remplir la BDD :
Mais voilà .... ça me renvoie "Erreur SQL" et la table demeure lamentablement vide !!
help please
--
Quand ton code php plante... t'es sur que c'est le serveur qui te comprend pas !!
Voila mon soucis...
J'ai une BDD mysql, je voudrais y stocker des news dans 3 champs (titre, date, texte) avec un champ id en autoincrément....
Jusque la tout vas bien !
J'ai fait un formulaire pour remplir les champs :
<html> <head> </head> <body> <form id="saisie-news" name="saisie-news" method="post" action="ajouternews.php"> Titre de la news : <input name="titre" id="titre" type="text" size="75" maxlength="75" /><br /> Date de la news : <input name="date" id="date" type="text" size="10" maxlength="10" /><br /> Texte de la news :<textarea name="texte" id="texte" cols="88" rows="7" wrap="soft" id="texte"></textarea><br /> <input name="SEND" value="Valider" type="submit" /> </form> </body> </html>
et un fichier de traitement du formulaire qui doit remplir la BDD :
<html>
<head>
</head>
<body>
<?php
$base = "DB******";
$table = "news";
$serveur = "rdbms.strato.de";
$user = "U*****";
$motdepasse = "*****";
$titre = $_POST['titre'];
$date = $_POST['date'];
$texte = $_POST['texte'];
echo "$titre" ;
echo "$date";
echo "$texte";
$connect = mysql_connect($serveur, $user, $motdepasse) or die ("erreur de connexion");
mysql_select_db('DB808486',$connect) or die ("erreur de connexion base");
$resultat = mysql_query("INSERT INTO news VALUES ('','$titre','$date',$texte')")or die("Erreur SQL !".mysql_error());
mysql_close();
?>
</body>
</html>
Mais voilà .... ça me renvoie "Erreur SQL" et la table demeure lamentablement vide !!
help please
--
Quand ton code php plante... t'es sur que c'est le serveur qui te comprend pas !!
3 réponses
-
<?php $base = "DB******"; $table = "news"; $serveur = "rdbms.strato.de"; $user = "U*****"; $motdepasse = "*****"; $titre = $_POST['titre']; $date = $_POST['date']; $texte = $_POST['texte']; $connect = mysql_connect($serveur, $user, $motdepasse) or die ("erreur de connexion"); mysql_select_db('DB808486',$connect) or die ("erreur de connexion base"); function _escape($string = "") { return mysql_escape_string ( $string ); } $sql = "INSERT INTO news('', titre, date, texte) VALUES ('" . _escape ( $titre ) . "','" . _escape ( $date ) . "','" . _escape ( $texte ) . "')"; mysql_query($sql); mysql_close(); ?>
la fonction escape est pour échapper les caractère sépiciaux comme é,è,' etc...
PS: dit moi si ca fonctionne :)-
Avec mysql_real_escape_string() au lieu de mysql_escape_string() ça serai mieux.
-
-
-
$resultat = mysql_query("INSERT INTO news VALUES ('','.$titre.','.$date.','.$texte.')")or die("Erreur SQL !".mysql_error());
Développeur VB6, VBS, VBA, VB.NET, C#, HTML, PHP, JAVASCRIPT, SQL. -
Salut,
Après le "Erreur SQL" tu dois avoir un texte t'expliquant l'erreur qui est survenue.
Peux-tu l'afficher ici? ça nous aidera à cibler le problème.