[PHP] Probleme avec MySql: Erreur que je n'arrive pas à résoudre

Probleme avec MySql: Erreur que je n'arrive pas à résoudre [PHP] - PHP - Programmation

Marsh Posté le 09-11-2002 à 00:42:37    

Salut, j'ai une erreur à chaque execution de ceci:

Code :
  1. require("conf.php" );
  2. //connexion mysql
  3. $connexion=mysql_connect($sql_serveur,$sql_user,$sql_passwd);
  4. $db=mysql_select_db($sql_bdd, $connexion);
  5. //nbgagnant --> nombre de gagnant par poule
  6. //nbpoule --> nb de poule
  7. //on backup la table teamcs:
  8. $sql0="DELETE FROM `teamcstmp` ";
  9. $req0=mysql_query($sql0);
  10. $sql="SELECT * from teamcs";
  11. $req=mysql_query($sql);
  12. while ($data = mysql_fetch_array($req)){
  13.  $sql1="INSERT INTO teamcstmp values ('','$data[equipe]','$data[player1]','$data[player2]','$data[player3]','$data[player4]')";
  14.  $req1=mysql_query($sql1);
  15. }
  16. //on vide la table des teamcs
  17. $sql0="DELETE FROM `teamcs` ";
  18. $req0=mysql_query($sql0);
  19. //on va chercher les gagnants par poule:
  20. while ($nbpoule!="0" ){
  21.  $sql36="SELECT * from manchecs where poule='$nbpoule' order by pts limit $nbgagant";
  22.  $req36=mysql_query($sql36);
  23. while ($data = mysql_fetch_array($req36)){
  24.  //on recup les trucs de tmp
  25.  $sql2="SELECT * from teamcs where equipe=$data[equipe]";
  26.  $req2=mysql_query($sql2);
  27.  $data2 = mysql_fetch_array($req2);
  28.  $sql1="INSERT INTO teamcs values ('','$data[equipe]','$data2[player1]','$data2[player2]','$data2[player3]','$data2[player4]')";
  29.  $req1=mysql_query($sql1);
  30. }
  31. $nbpoule=$nbpoule-1;
  32. }


 
l'erreur:
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in c:\program files\easyphp\www\cosmo\prog\gagnantcs.php on line 33
 
Merci d'avance.

Reply

Marsh Posté le 09-11-2002 à 00:42:37   

Reply

Marsh Posté le 09-11-2002 à 00:50:45    

tu as une erreur dans ton query, après le query tu fais
 
mysql_error();
 
et ca affichera ton erreur.


---------------
Informaticien.be - Lancez des défis à vos amis
Reply

Marsh Posté le 09-11-2002 à 01:03:03    

ça n'ajoute rien

Reply

Marsh Posté le 09-11-2002 à 01:05:24    

je sais pas si ton erreur est due à ça, mais tu n'as plus rien dans ta table cs :

Code :
  1. while ($data = mysql_fetch_array($req36)){
  2.        //on recup les trucs de tmp
  3.         $sql2="SELECT * from teamcs where equipe=$data[equipe]";
  4.         $req2=mysql_query($sql2);
  5.         $data2 = mysql_fetch_array($req2);
  6. ...


 
ça devrait être teamtmp non ?
c'est vraiment utile de passer par une table temporaire ??


---------------
...oups kernel error...
Reply

Marsh Posté le 09-11-2002 à 01:40:43    

Après un mysql_query, il est judicieux de tester le résultat pour vérifier que la requête s'est correctement exécutée :ange:

Reply

Marsh Posté le 09-11-2002 à 10:38:35    

Si c'est la première query (j'ai pas envie de compter les lignes), c'est p-e parce que tu as mis
 

limit $nbgagant


 
(tu as oublié un n).
 
Sinon, faudrait surtout voir la structure de ta table.


---------------
StarCraft Professional Gaming Database | [Ze Topic] Starcraft/BroodWar
Reply

Marsh Posté le 09-11-2002 à 16:51:51    

lol, erreurs betes !
il manquait effectivement le "n" à gagnant et le "tmp" à teamcs
 :D  
 
 
merci !!

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed