Minichat

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Minichat

par Patriboom » 31 déc. 2007, 20:11

Tu peux aussi tout simplement télécharger une solution toute faite:
http://www.webdev.ro/products/webchat/

par anunsan » 31 déc. 2007, 17:09

Merci c'est bon

par zeus » 31 déc. 2007, 16:44

Merci zeus pour ta solution, mais cela ne la corrige pas elle affiche juste autre chose.
Effectivement, c'est le but

_Tu ne laisse pas PHP gérer ses propres erreurs, mais tu mets en place ta propre gestion d'erreur
_Tu obtiens le message d'erreur qui t'indique quelle est l'erreur dans la requête

par d0m » 31 déc. 2007, 16:37

Effectivement ta syntaxe n'est pas correct.
DESC correspond à l'ordre, il vient donc à la fin de l'élément désignant l'ordre :

Code : Tout sélectionner

SELECT * FROM minichat ORDER BY id DESC LIMIT 0, 10
Il ne faut pas mélanger les différentes options des requêtes.

par anunsan » 31 déc. 2007, 16:23

J'ai mis ceci a la place
$reponse = mysql_query("SELECT * FROM minichat ORDER BY id LIMIT 0, 10 DESC") or die(mysql_error());
et sa m'indique

Erreur de syntaxe près de 'DESC' à la ligne 1

ps: pas facile ou début :roll:

par d0m » 31 déc. 2007, 16:19

elle t'affiche surement une erreur SQL qui t'indique d'où vient le problème.

par anunsan » 31 déc. 2007, 15:39

Un post a disparu ? :?

Mon erreur ce trouve peut être ici ?
// On utilise la requête suivante pour récupérer les 10 derniers messages :
$reponse = mysql_query("SELECT * FROM minichat ORDER BY ID DESC LIMIT 0,10");
Merci zeus pour ta solution, mais cela ne la corrige pas elle affiche juste autre chose.

par zeus » 31 déc. 2007, 15:34

L'erreur que tu nous donnes signifie que le retour d'exécution de la requête (la valeur de retour de mysql_query() ) est invalide.
En clair, cela signifie que la requête a échouée.

Pour prévenir ce genre d'erreur, il faut gérer le retour d'erreur
$str_requete = "SELECT ...";
$o_result = mysql_query($str_requete);

if( $o_result === false )
{
  echo "La requête a échouée : \n". $str_requete ."\n". mysql_error();
}
else
{
  while ($donnees = mysql_fetch_array($reponse))
  {
    ..
  }
}

Minichat

par anunsan » 31 déc. 2007, 15:27

Bonjour a tous , et bonne année aussi ^^

Bon voila en faite je m entraine aux php et mysql et je code pour le moment un minichat simple , mais j'ai un problème.

il m'indique cette erreur.

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in c:\program files\easyphp1-8\www\minichat.php on line 73

voici la ligne en question.
while ($donnees = mysql_fetch_array($reponse))
Qu'est ce qui n'est pas valide dans cette ligne?