Un problème en PHP/MySQL

Un problème en PHP/MySQL - Programmation

Marsh Posté le 19-02-2002 à 15:22:01    

J'ai un script qui m'oblige a effectuer une validation des données avant qu'elles soient insérées dans la base.
 
Mais voilà l'erreur, chaque page m'affiche ca :

Code :
  1. Warning: Supplied argument is not a valid MySQL result resource in c:\program files\easyphp\www\validation\pinzo.php on line 18


 
La ligne 18 de pinzo.php contient ca :

Code :
  1. while ($theme = mysql_fetch_array($Query)) {


 
m@nou si tu passes par là fais un coucou :D :hello:
 
Help-me
 
A+


---------------
“I'll thank you very much.”
Reply

Marsh Posté le 19-02-2002 à 15:22:01   

Reply

Marsh Posté le 19-02-2002 à 15:40:27    

Qu'est ce que tu met dans $query ? pas ta requete quand meme :) ?

Reply

Marsh Posté le 19-02-2002 à 15:42:09    

C'est pas moi qui ai fait le script donc je suis pas trop callé. C'est m@nou...
 
Mais voilà le $Query :

Code :
  1. $Query = mysql_query("SELECT id,theme from theme where valide='OK'" );

 

[jfdsdjhfuetppo]--Message édité par Pinzo--[/jfdsdjhfuetppo]


---------------
“I'll thank you very much.”
Reply

Marsh Posté le 19-02-2002 à 15:45:17    

Ou (et comment ?) est declare ta connexion a la base ?

Reply

Marsh Posté le 19-02-2002 à 15:47:00    

Si c'est ce que je pense c'est dans un fichier config.inf.php dont voici le contenu :

Code :
  1. <?
  2. /* connexion à la base de données ---------------------------- */
  3. $myhote = "localhost";      // host ("localhost" ou "sql.free.fr" pour Free)
  4. $myuser = "root";            // login de la base de données
  5. $mypass = "";            // password de la base de données
  6. $mybase = "testing";            // nom de la base de données
  7. /* Noms des Tables mySQL ------------------------------------- */
  8. $theme         = "theme";
  9. ?>

 

[jfdsdjhfuetppo]--Message édité par Pinzo--[/jfdsdjhfuetppo]


---------------
“I'll thank you very much.”
Reply

Marsh Posté le 19-02-2002 à 15:50:17    

Ca ce sont les variables qui te permettent de te connecter ... mais tu dois avoit quelque chose comme ca quelque part :
$con=mysql_connect() ou $con=mysql_pconnect() .. certainement au debut de ta page.

Reply

Marsh Posté le 19-02-2002 à 15:52:49    

Pas tellement.
 
En fait m@nou m'a envoyé les fichiers tels qu'ils étaient configurés pour fonctionner sur sa base donc j'ai du mal à les adapter à la mienne. :/
 
Surtout que je suis assez newbie en PHP [:claire_redfield]


---------------
“I'll thank you very much.”
Reply

Marsh Posté le 19-02-2002 à 16:05:34    

Bon bah fais ca dans ton script :
 
// Si tu es sur serveur local
$con=mysql_connect("localhost","root","" );
 
// Si tu es sur free
$con=mysql_connect("sql.free.fr","TON_LOGIN","TON_PASSWORD" );
 
// Ensuite on selectionne la base de donnee
mysql_select_db("NOM_DE_TA_BASE_MYSQL" );
 
// Enfin tu executes ta requete
$query = mysql_query("TA_REQUETE_SQL" );
 
Voili voilou

Reply

Marsh Posté le 19-02-2002 à 16:10:25    

Ok merci je vais essayer. :hello:


---------------
“I'll thank you very much.”
Reply

Marsh Posté le 19-02-2002 à 16:14:51    

J'ai du faire une erreur quelque pars, voici la source entière de la page :

Code :
  1. <HTML>
  2. <HEAD><TITLE>Concours Pinzo</TITLE>
  3. </HEAD>
  4. <BODY bgcolor="#9CC8E5" TOPMARGIN=0 MARGINWIDTH=0 MARGINHEIGHT=0 LEFTMARGIN=0>
  5. <CENTER>
  6. <font size="+2">Thèmes validés pour pinzo</font><br><br>
  7. <a href="validation.php">Allez vers les thèmes à valider</a><br>
  8. <a href="add.php">Ajouter un thème</a>
  9. <?php include("config.inc.php" );
  10. // Connexion à la base
  11. $con=mysql_connect("localhost","root","" );
  12. // Selection de la base de données
  13. mysql_select_db("testing" );
  14. // Execution de la requete
  15. $Query = mysql_query("SELECT id,theme from theme where valide='OK'" );
  16. ?>
  17. <table width="95%" border="1" cellspacing="0" cellpadding="5" align="center" bordercolor="#000099">
  18. <?php
  19. // Interroger la table theme
  20. while ($theme = mysql_fetch_array($Query)) {
  21.  echo "<tr bgcolor=" . $Bgcolor .">";
  22.  echo "<td>";
  23.  echo $theme["theme"];
  24.  echo "</td>";
  25.  echo "</tr>";
  26. }
  27. ?>
  28. </table>
  29. </CENTER>
  30. </BODY>
  31. </HTML>


 
Avec ce que tu m'as donné en gras. C'est surement dans phpMyAdmin que dois modifier des paramètres (champs en + ?) mais je sais pas quoi...

 

[jfdsdjhfuetppo]--Message édité par Pinzo--[/jfdsdjhfuetppo]


---------------
“I'll thank you very much.”
Reply

Marsh Posté le 19-02-2002 à 16:14:51   

Reply

Marsh Posté le 19-02-2002 à 17:02:45    

Euh pardon de vous déranger tout les 2 :) mais est-ce que c normal que tu es dans ton config.inc.php une ligne avec $theme = "theme" et un peu plus loin je vois dans ton script while( $theme = ...) ?? C peut être une connerie ce que je dis là mais bon :p Je pense que tu devrais changer le nom de ta variable dans le while genre tu la nomme $toto :D pour faire classique ;)
parce que là tu devais avoir un truc du genre theme = mysql_fetch_array(...)
 
Si theme c le nom de ta table ya comme un hic là non ?
 
Je le répète je peux être totalement à la masse c normal je programme depuis ce matin et g la tête ds le paté alors un peu d'indulgence siou plé :D
 
Bye


---------------
Q.G Tutoriaux ici
Reply

Marsh Posté le 19-02-2002 à 17:07:39    

Bon, procedons par ordre :
Quel erreur tu as en sortie ?
 
ajoute ca apres les declarations pour verifier que tu es bien connecte et que la base et bien selectionnee :
<?
if(!$con){die("Connection impossible a la base !" );
if(!mysql_select_db("testing" )){die("Impossible de trouver la base \"testing\"" );}
?>
 
A suivre ...

Reply

Marsh Posté le 19-02-2002 à 17:10:12    

Remarque judicieuse de dirakocha meme si je ne crois pas que ce soit ca qui foire ...
De toute facon pour l'instant tu peux virer l'include (sauf il y a des trucs dedans autres que le 4 ou 5 variables que tu as sortis tout a l'heure)

Reply

Marsh Posté le 19-02-2002 à 17:28:45    

Rahh c'est trop de questions pour moi. :D
Excusez-moi, comme je l'ai dit je débute vraiment et je connais pas exactement la composition de ces pages...
 
Je verrai avec m@nou ce que je peux faire...


---------------
“I'll thank you very much.”
Reply

Marsh Posté le 19-02-2002 à 17:39:31    

Ben d'accord mais tu nous tiens o courant :D moi j'aime po rester sur une impasse ;)


---------------
Q.G Tutoriaux ici
Reply

Marsh Posté le 19-02-2002 à 17:42:18    

Pinzo a écrit a écrit :

J'ai un script qui m'oblige a effectuer une validation des données avant qu'elles soient insérées dans la base.
 
Mais voilà l'erreur, chaque page m'affiche ca :

Code :
  1. Warning: Supplied argument is not a valid MySQL result resource in c:\program files\easyphp\www\validation\pinzo.php on line 18


 
La ligne 18 de pinzo.php contient ca :

Code :
  1. while ($theme = mysql_fetch_array($Query)) {


 
m@nou si tu passes par là fais un coucou :D :hello:
 
Help-me
 
A+  




 
 
Cette erreur indique que ta requete interroge un champ inexistant

Reply

Marsh Posté le 19-02-2002 à 21:27:53    

skylight a écrit a écrit :

 
 
 
Cette erreur indique que ta requete interroge un champ inexistant  



Ok alors dans la ligne 18 que j'ai montré ci-dessus, quel est ce champ ? theme ? Il y est pourtant [:wam]


---------------
“I'll thank you very much.”
Reply

Marsh Posté le 19-02-2002 à 21:35:53    

sans doute Query
 
Y a quoi dans la fameuse table theme?

Reply

Marsh Posté le 19-02-2002 à 21:40:31    

HORNY-GRANDCORNU a écrit a écrit :

sans doute Query
 
Y a quoi dans la fameuse table theme?  



Je suis organisateur du Concours de Graphisme du forum HardWare.fr, enfin... pour être direct je suis simplement un des "pioniers".
 
Il se trouve que tous les participants peuvent sans problème proposer leur propre thème pour qu'un jour il soit réalisé. Jusqu'à maintenant je le faisais manuellement sur ma page PHP.
 
J'ai donc installé un formulaire pour qu'ils l'envoyent tous seuls sur la base MySQL. Pas de problème là mais ils ont un peu exagéré et entré n'importe quoi. Je veux donc valider chaque thème demandé.
 
C'est là qu'intervient ce script. Donc pour résumer tout ca ma base sert juste à stocker les noms des thèmes.
 
Comme je m'y retrouve pas, ce serait cool si je pouvais envoyer le Zip à quelqu'un qui puisse me configurer ca pour que j'aie juste à entrer les infos de ma base pour que ca marche. :)
 
ce serait vraiment cool :) :hello:


---------------
“I'll thank you very much.”
Reply

Marsh Posté le 19-02-2002 à 21:49:33    

si ta table theme contient bien les colonnes id, theme et valide, ça devrait fonctionner au poil!
 
EDIT : je retire ce que j'ai dit, minuscules autorisées apparemment

 

[jfdsdjhfuetppo]--Message édité par HORNY-GRANDCORNU--[/jfdsdjhfuetppo]

Reply

Marsh Posté le 19-02-2002 à 22:13:03    

Pinzo a écrit a écrit :

 
<?php include("config.inc.php" );
 
// Connexion à la base
$con=mysql_connect("localhost","root","" );
 
// Selection de la base de données
mysql_select_db("testing" );
 
// Execution de la requete
$Query = mysql_query("SELECT id,theme from theme where valide='OK'" );

 
?>


Faut toujours tester les résultats.
 
]// Connexion à la base
$con=mysql_connect("localhost","root","" );
if (! $con)
  echo "Erreur connexion au serveur<br>\n";
 
// Selection de la base de données
if (! mysql_select_db("testing" ))  
  echo "Erreur selection de la base<br>\n";
 
// Execution de la requete
$Query = mysql_query("SELECT id,theme from theme where valide='OK'" );
if (! $Query)  
  echo "Erreur durant la requete<br>\n";
 
Au moins tu verras précisément à quel niveau il y a une erreur.

Reply

Marsh Posté le 19-02-2002 à 23:08:38    

ta table est créée au moins ?
et avec les bons champs ?

Reply

Marsh Posté le 19-02-2002 à 23:19:13    

Oui elle est crée mais apparement j'ai oublié "valide" :ange:


---------------
“I'll thank you very much.”
Reply

Marsh Posté le 19-02-2002 à 23:20:28    

Yahooo ca marche. Saleté de champ oublié :D [:dux]
 
Merci à vous tous de m'avoir aidé. :jap:


---------------
“I'll thank you very much.”
Reply

Marsh Posté le 20-02-2002 à 08:36:56    

scuse sur ce coup là j'ai été un peu rapide je croyais que t'avais effectivement un include de connexion à ta base ;)
 
et la prochaine fois je t'enverrais le "create" de la table, çà évitera les malentendus :D


---------------
Mes photos,Feed-Back HA/V
Reply

Marsh Posté le 20-02-2002 à 12:59:37    

m@nou a écrit a écrit :

scuse sur ce coup là j'ai été un peu rapide je croyais que t'avais effectivement un include de connexion à ta base ;)
 
et la prochaine fois je t'enverrais le "create" de la table, çà évitera les malentendus :D  



:jap: :hello:

 

[jfdsdjhfuetppo]--Message édité par Pinzo--[/jfdsdjhfuetppo]


---------------
“I'll thank you very much.”
Reply

Marsh Posté le 20-02-2002 à 15:10:37    

Pinzo a écrit a écrit :

Oui elle est crée mais apparement j'ai oublié "valide" :ange:  




 
 
n'oublie pas :  
Supplied argument is not valide -> erreur de champ.

Reply

Marsh Posté le 20-02-2002 à 15:12:55    

skylight a écrit a écrit :

 
 
 
n'oublie pas :  
Supplied argument is not valide -> erreur de champ.  



À coup sûr ? Ok je saurai la prochaine fois. Merci :hello:


---------------
“I'll thank you very much.”
Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

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