JeuWeb - Crée ton jeu par navigateur
Mini chat etc...impossible d'ecrire - Version imprimable

+- JeuWeb - Crée ton jeu par navigateur (https://jeuweb.org)
+-- Forum : Discussions, Aide, Ressources... (https://jeuweb.org/forumdisplay.php?fid=38)
+--- Forum : Programmation, infrastructure (https://jeuweb.org/forumdisplay.php?fid=51)
+--- Sujet : Mini chat etc...impossible d'ecrire (/showthread.php?tid=687)

Pages : 1 2


RE: Mini chat etc...impossible d'ecrire - Raoull - 01-02-2007

Le problèle est donc apparement que rien ne s'enregistre dans ta bdd, essaie de replacer ca :

Code PHP :
<?php 
if ($_POST['pseudo'] != NULL AND $_POST['message'] != NULL)

par ca :

Code PHP :
<?php 
if ($_POST['pseudo'] != '' AND $_POST['message'] != '')

Pour débugger un peu, tu peux vérifier que l'INSERT dans la bdd se passe bien avec mysql_insert_id()
par exemple :

Code PHP :
<?php 
mysql_query
("INSERT INTO minichat VALUES('', '$pseudo', '$message')");
$ret=mysql_insert_id();
if (
$ret === FALSE) { echo 'Echec : La connexion SQL a échouée'; }
elseif (
$ret == 0) { echo 'Aucune valeur AUTO_INCREMENT retournée'; }
else { echo
'Enregistrement sauvé avec l\'id '.$ret; }



RE: Mini chat etc...impossible d'ecrire - max - 01-02-2007

ou alors test ca:

mysql_query("INSERT INTO minichat VALUES('', '$pseudo', '$message')")or die(mysql_error());
mysql_query("SELECT * FROM minichat ORDER BY ID DESC LIMIT 0,10")or die(mysql_error());

en fait rajoute or die(mysql_error()) a la fin de tes requetes vers ta bdd. normalement ca t'afichera l'erreur si elle vient de là Wink


RE: Mini chat etc...impossible d'ecrire - Kassak - 01-02-2007

Voila j'ai fais vos deux choses, maintenant, quand je clique sur envoyer, il me dit cela: Aucune valeur AUTO_INCREMENT retournée...pas compris!

Edit, ca a l'air de marcher! Je ne sais pas pourquoi......^^si je vire le bout de code que tu m'as dit de mettre en plus raoull, ca va marcher quand meme? Car j'ia du mal a comprend comment juste en rajoutant ca ca marche^^


RE: Mini chat etc...impossible d'ecrire - Byleth - 01-02-2007

Heu, tu as bien coché auto-increment pour le champs id de ta table? Parceque c'est ça l'auto increment.

Le code de Raoull permet juste de connaitre le problème de connexion à la BdD, et c'est bien ça qui cloche...


RE: Mini chat etc...impossible d'ecrire - Raoull - 01-02-2007

Non le bout de code en plus n'était là que pour débugger et essayer de trouver ce qui cloche. Une fois que ca marche, tu le vires.

Le plus important était de remplacer NULL par ''

Et oui vérifie que ton champs ID est bien en auto-increment

De toute facon, si mysql_insert_id() te retourne 0, c'est que l'enregistrement ne se passe pas correctement, ca doit etre >0, ton probleme est donc bien la, il faut trouver pkoi ca n'enregistre pas...

Ton code est correct, c'est dans ta bdd p-e que ca cloche. Vérifie la structure de ta table.


RE: Mini chat etc...impossible d'ecrire - Kassak - 01-02-2007

non masi maintenant ca a l'air de marcher^^

Je laisse le bout de code rajouté, il ne fait rien de mal, vous pouvez tester s'il vous plait mon mini chat et mon livre d'or?


RE: Mini chat etc...impossible d'ecrire - Raoull - 01-02-2007

Au lieu d'un htmlentities simple, essaie plutot avec ENT_QUOTES :
Code PHP :
<?php 
$message
= htmlentities ($_POST['message'], ENT_QUOTES);
$pseudo = htmlentities ($_POST['pseudo'], ENT_QUOTES);

Comme ca les guillemets simple ou doubles seront aussi convertis, alors que la ils font foirer la requète...