Page 1 sur 1

Probléme enregistrement BDD

Posté : 10 nov. 2011, 16:43
par yocow
Voila, je débute dans ce qui est PHP et MySQL et j'essaye de faire un exercice trouvé sur un site.
Le but est de faire un minichat et j'ai un problème avec mon code.
Le pseudo et le message que j’envoie par le formulaire n'est pas enregistré dans la BDD (j'ai bien une ligne qui s'ajoute dans la table, mais elles est vide dans les champs pseudo et message)
Voici mes codes:

Page affichant les message du minichat et les formulaire pseudo et message.

Code : Tout sélectionner

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Minichat</title> </head> <body> <form name="form" method="post" action="minichat_post.php"> <label>Pseudo:</label> <input type="text" name="nom"/> <label>Votre message:</label> <input type="text" name="tel"/> <input type="submit" value="envoyer"/> </form> <?php //connxion au serveur $connexion=mysql_connect("localhost","root",""); //séléction de la BDD mysql_select_db("itecom",$connexion); //déclaration de la requéte SQL $requete="SELECT * FROM minichat ORDER BY ID DESC LIMIT 0, 10"; //lancement de la requéte $job=mysql_query($requete) or die(mysql_error()); //ici je compte le nombre dentrées dans ma table $resultat=mysql_num_rows($job); // ?> <?php $tab=mysql_fetch_assoc($job); do{ echo "<div id=\"nom\">".$tab['ID'].":</div> <div id=\"num\">".$tab['pseudo']."</div> <div id=\"num\">".$tab['message']."</div><hr>"; }while($tab=mysql_fetch_assoc($job)); //mysql_close($connexion); seulement sur php3&4 fermeture de connexion ?> </body> </html>
Voici le code qui permet d'enregistrer les entrées dans la BDD.

Code : Tout sélectionner

<?PHP $nomuser=$_POST['pseudo']; $teluser=$_POST['message']; $connexion=mysql_connect("localhost","root",""); mysql_select_db("itecom",$connexion); $requeteinsertion="INSERT INTO minichat(pseudo, message)VALUES('$nomuser','$teluser')"; $job=mysql_query($requeteinsertion) or die(mysql_error()); if($job){ header("location:minichat.php"); } ?>

Re: Probléme enregistrement BDD

Posté : 10 nov. 2011, 16:49
par macgawel
Bonjour.

Première chose à faire : vérifier le contenu de $_POST.
Deuxième chose à faire : afficher la requête pour la vérifier.
<?PHP
print_r($_POST); // Affiche le contenu de $_POST
$nomuser=$_POST['pseudo'];
$teluser=$_POST['message'];
$connexion=mysql_connect("localhost","root","");
mysql_select_db("itecom",$connexion);

$requeteinsertion="INSERT INTO minichat(pseudo, message)VALUES('$nomuser','$teluser')";
echo "Requete : $requeteinsertion"; // Affiche la requête
$job=mysql_query($requeteinsertion) or die(mysql_error());
/* Suppression du header pour débogage.
if($job){
header("location:minichat.php");
}
*/
?>
Avec ça, tu as déjà de fortes chances de trouver d'où vient ton problème :roll:

Re: Probléme enregistrement BDD

Posté : 10 nov. 2011, 16:57
par yocow
Ah ouais trés efficace ce code, j'ai trouver d'ou venait l'erreur. Merci :D