Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1189 connectés 

  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  [URGENT Erreur SQL] Moteur de recherche PHP/SQL via formulaire HTML

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[URGENT Erreur SQL] Moteur de recherche PHP/SQL via formulaire HTML

n°1077474
twist85
Posté le 10-05-2005 à 11:15:49  profilanswer
 

Bonjour à toutes et à tous et je vous remercie d'avance pour vos réponse.
 
Voila je vous expose mon pb: via un formulaire HTML qui se présente de la forme suivante :
 

Code :
  1. <form action="recherchek7.php" method="post">
  2. //l'user tape ce qu'il souhaite rechercher et choisi son critére
  3. <input type='text' name='recherche' size=40 maxlength=100>
  4. //critere
  5.       <select name="recherchek7">
  6.         <option value="production">Par Production</option>
  7.         <option value="artiste">Par Artiste</option>
  8.         <option value="album">Par Album</option>
  9.  <option value="titre">Par Titre</option>
  10.       </select>
  11.       <input type="submit" value="Rechercher">
  12.   </form>


 
Et voici maintenant le script PHP/SQL qui traite ces informations :
 

Code :
  1. <?php
  2. $recherchek7 = $_POST['recherche'];
  3. // on se connecte à notre base
  4.    $connexion = mysql_connect("localhost","root","" );
  5.    mysql_select_db("Prodk7",$connexion);
  6. //ouverture du tableau qui va afficher le résultat
  7. echo "<table>";
  8. //1ere condition si l'user a fait sa recherche par production
  9. if($_POST['recherchek7'] == 'production')
  10.   {
  11. $sq1 = ("SELECT * filek7 WHERE prod = '$recherchek7'" );
  12. $requete = mysql_query($sq1);
  13.         while ($recherche = mysql_fetch_array($requete))
  14.   {
  15.   print "<tr><td align='center'><font color='#ffffff'>$recherche[prod]</font></td>";
  16.   print "<td align='center'><font color='#ffffff'>$recherche[artist]</font></td>";
  17.   print "<td align='center'><font color='#ffffff'><a href='mp3k7/$recherche[album]/$recherche[titre]'>$recherche[titre]</a></font></td><br>";
  18.   }
  19.  }
  20. //2éme condition si l'user choisi par artiste  
  21. elseif($_POST['recherchek7'] == 'artiste')
  22.   {
  23. $sq1 = ("SELECT * filek7 WHERE artist = '$recherchek7'" );
  24. $requete = mysql_query($sq1);
  25.    while ($recherche = mysql_fetch_array($requete))
  26.   {
  27.   print "<tr><td align='center'><font color='#ffffff'>$recherche[artist]</font></td>";
  28.   print "<td align='center'><font color='#ffffff'>$recherche[prod]</font></td>";
  29.   print "<td align='center'><font color='#ffffff'><a href='mp3k7/$recherche[album]/$recherche[titre]'>$recherche[titre]</a></font></td><br>";
  30.   }
  31.   }
  32. //3éme condition par album    
  33. elseif($_POST['recherchek7'] == 'album')
  34.   {
  35. $sq1 = ("SELECT * filek7 WHERE album = '$recherchek7'" );
  36. $requete = mysql_query($sq1);
  37.    while ($recherche = mysql_fetch_array($requete))
  38.   {
  39.   print "<tr><td align='center'><font color='#ffffff'>$recherche[artist]</font></td>";
  40.   print "<td align='center'><font color='#ffffff'>$recherche[prod]</font></td>";
  41.   print "<td align='center'><font color='#ffffff'><a href='mp3k7/$recherche[album]/$recherche[titre]'>$recherche[titre]</a></font></td><br>";
  42.   }
  43.   }
  44. //4éme condition par titre
  45. elseif($_POST['recherchek7'] == 'titre')
  46.  {
  47.    $sq1 = ("SELECT * filek7 WHERE titre = '$recherchek7'" );
  48.    $requete = mysql_query($sq1);
  49.    while ($recherche = mysql_fetch_array($requete))
  50.   {
  51.   print "<tr><td align='center'><font color='#ffffff'><a href='mp3k7/$recherche[album]/$recherche[titre]'>$recherche[titre]</a></font></font></td>";
  52.   print "<td align='center'><font color='#ffffff'>$recherche[prod]</font></td>";
  53.   print "<td align='center'><font color='#ffffff'>$recherche[artist]</td><br>";
  54.   }
  55.   }
  56. echo "</table>";
  57. mysql_close();
  58. ?>


 
Voila donc si vous avez compris il s'agit seulement d'un copier coller pour chaque condition en modifiant seulement ce qui est nécessaire
 
mais le probleme qui me pose c'est que lors de l'affichage du résultat l'erreur apparait pour les lignes suivantes :
 

Code :
  1. $sq1 = ("SELECT * filek7 WHERE prod = '$recherchek7'" );
  2. $sq1 = ("SELECT * filek7 WHERE artist = '$recherchek7'" );
  3. $sq1 = ("SELECT * filek7 WHERE album = '$recherchek7'" );
  4. $sq1 = ("SELECT * filek7 WHERE titre = '$recherchek7'" );


 
voici l'erreur :  
 
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in c:\program files\easyphp1-8\www\padminprod\k7\recherchek7.php on line 34.
 
 
J'ai vérifié ma table mes données sont bien enregistrés ainsi que les morceaux, et toutes les autres informations.
 
Je vous remercie si vous arrivez à savoir ou se trouve mon erreur svp merci beaucoup.
Olivier

mood
Publicité
Posté le 10-05-2005 à 11:15:49  profilanswer
 

n°1077480
cesarr89
Posté le 10-05-2005 à 11:18:06  profilanswer
 

fait un echo sur tes requêtes, je suis pas certain qu'elles soient correctes

n°1077501
cesarr89
Posté le 10-05-2005 à 11:26:29  profilanswer
 

Au faite, tu as lu la charte avant de poster?

n°1077516
twist85
Posté le 10-05-2005 à 11:30:56  profilanswer
 

Oui quel est le probléme ?

n°1077518
cesarr89
Posté le 10-05-2005 à 11:32:07  profilanswer
 

[URGENT Erreur SQL]

n°1077523
sircam
I Like Trains
Posté le 10-05-2005 à 11:33:50  profilanswer
 

C'est un problème de SQL ou de PHP ?
 
Rappel : PHP <> SQL.
 
Avant de tout bazarder sur ce forum, un minimum de recherche personnelle est indispensable pour espérer une réponse.


---------------
Now Playing: {SYNTAX ERROR AT LINE 1210}
n°1077547
twist85
Posté le 10-05-2005 à 11:42:54  profilanswer
 

merci bcp de votre aide je suis bien sur la partie SQL du forum celui ci est bien énoncé dans mon titre dsl d'avoir intégré le terme URGENT mais il ne faut pas chercher la petite bête je demande juste de l'aide et non pas la police.
Je suis encore désolé de l'expression de mon titre, en contre-partie j'accepte toute type de réponse concernant mon probléme merci

n°1077555
cesarr89
Posté le 10-05-2005 à 11:45:15  profilanswer
 

Citation :

j'accepte toute type de réponse concernant mon probléme merci


 
Je t'ai pas demandé quelque chose dans ma première réponse?
Comment tu veux que je t'aide si tu me donne pas les élèments nécessaires.

n°1077579
twist85
Posté le 10-05-2005 à 11:54:56  profilanswer
 

J'ai rétrécie au maximun mon script soit il ne reste qu'un seul champ de recherche : par production.
 
donc tu voudrais que je fasse echo "$requete";
 
je vien de le faire mais rien n'apparé a part l'erreur suivante :
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource
 
si sa t'avance d'avance ou demande moi autre chose si ce n'est pas ce que tu souhaitais merci

n°1077590
cesarr89
Posté le 10-05-2005 à 11:59:38  profilanswer
 

rebalance ton code alors

mood
Publicité
Posté le 10-05-2005 à 11:59:38  profilanswer
 

n°1077595
twist85
Posté le 10-05-2005 à 12:01:05  profilanswer
 

Code :
  1. <?php
  2. $recherchek7 = $_POST['recherche'];
  3. // on se connecte à notre base
  4.    $connexion = mysql_connect("localhost","root","" );
  5.    mysql_select_db("Prodk7",$connexion);
  6. echo "<table>";
  7. if($_POST['recherchek7'] == 'production')
  8.   {
  9.    $requete = mysql_query("SELECT * filek7 WHERE prod = $recherchek7" );
  10.    while ($row = mysql_fetch_array($requete))
  11.    echo "$row";
  12.   {
  13.   print "<tr><td align='center'><font color='#ffffff'>$row[prod]</font></td>";
  14.   print "<td align='center'><font color='#ffffff'>$row[artist]</font></td>";
  15.   print "<td align='center'><font color='#ffffff'><a href='mp3k7/$row[album]/$row[titre]'>$row[titre]</a></font></td><br>";
  16.   }
  17.  }
  18. echo "</table>";
  19. mysql_close();
  20. ?>


 
Le voici je ne comprends vraiment pas d'ou vien l'erreur :/

n°1077639
cesarr89
Posté le 10-05-2005 à 12:31:58  profilanswer
 

Ta requete est mal faite

n°1077648
twist85
Posté le 10-05-2005 à 12:37:29  profilanswer
 

Merci mais pourrais tu me donner la soluction stp ? car j'ai du mal a voir comment ?

n°1077650
Friday Mon​day
Trop de hérissons écrasés...
Posté le 10-05-2005 à 12:37:51  profilanswer
 

Moi je vois plein de "font-color" qui me piquent les yeux et m'empechent donc de lire le code :D

n°1077687
twist85
Posté le 10-05-2005 à 12:59:15  profilanswer
 

Ok Ok fait comme si il y était pas alors :) mais je voudrais savoir pourquoi ma requete n'est pas bonne ? svp ?

n°1077697
twist85
Posté le 10-05-2005 à 13:02:26  profilanswer
 

Cesarr89 j'ai vraiment besoin de ton aide tu m'as lair d'avoir bien compris mon pb mais si tu peux me donner d'avantage de solution sur ma requete stp !

n°1077709
Friday Mon​day
Trop de hérissons écrasés...
Posté le 10-05-2005 à 13:10:27  profilanswer
 

Et si tu testais $requete pour afficher l'erreur avant de commencer à faire des mysql_fetch dedans comme un bourrin ?

n°1077747
gfa
Posté le 10-05-2005 à 13:44:01  profilanswer
 

Friday Monday a écrit :

Et si tu testais $requete pour afficher l'erreur avant de commencer à faire des mysql_fetch dedans comme un bourrin ?


Voilà une idée qu'elle est bonne :)
 
C'est vrai qu'on est un peu aveuglé par toutes ces couleurs mais quand même on voit facilement où se trouve l'erreur... Une erreur de from... euh pardon de forme on dira :) Bref, une erreur de débutant :)  
 
Cherche un peu twist85 et aux yeux la réponse te sautera


Message édité par gfa le 10-05-2005 à 13:44:51
n°1077754
cesarr89
Posté le 10-05-2005 à 13:47:44  profilanswer
 

Bon alors twist tu trouve ou pas?

n°1077761
twist85
Posté le 10-05-2005 à 13:55:42  profilanswer
 

Mouarf la déchéance du débutant je trouve vraiment pas j'ai testé des truc dy style :
Print "$requete"; mais sa ne m'affiche rien et je n'ai plus l'erreur bien evidement car j'ai supprimer le mysql_fetch....
 
 
Je vous en supplie de mille grâces dite moi ou je me suis planté svp ?

n°1077770
Friday Mon​day
Trop de hérissons écrasés...
Posté le 10-05-2005 à 14:02:43  profilanswer
 

Et si tu commençais par lire une doc avant de coder porte nawak ?
http://fr.php.net/mysql_query
 
Je t'ai demandé de tester $requete pas de l'afficher.

n°1077772
gfa
Posté le 10-05-2005 à 14:03:39  profilanswer
 

twist85 a écrit :

Mouarf la déchéance du débutant je trouve vraiment pas j'ai testé des truc dy style :
Print "$requete"; mais sa ne m'affiche rien et je n'ai plus l'erreur bien evidement car j'ai supprimer le mysql_fetch....
 
 
Je vous en supplie de mille grâces dite moi ou je me suis planté svp ?


Salut,
 
Bon, moi j'y connais rien en PHP, donc je vais pas pouvoir t'aider à visualiser ta requête avec des commandes PHP. M'enfin, ce que tu peux faire c'est déjà un bête copier/coller de ton code avec une clause where que tu mets à la main... Tu lances ça dans un outil d'analyse de requête MySQL et tu regardes ce que ton serveur te réponds... Et là... ô miracle tu vas certainement trouver ta solution :)
 
Ah oui, encore une chose... Tu es débutant en SQL aussi? Ce qui serait bien c'est de lire un peu de doc et de faire un ou deux tutos pour bien comprendre comment fonctionne SQL.
 
A+

n°1077777
twist85
Posté le 10-05-2005 à 14:06:04  profilanswer
 

Ma puissance du débutant ne voie pas trop comment tester une viriable sans l'afficher ?
 
mais j'ai vu grace à ton url mon erreur -->" ; " qui se trouve a la fin du query
 
Si tu peux m'expliquer comment testé une variable stp ?merci

n°1077784
crazywolf
Posté le 10-05-2005 à 14:08:08  profilanswer
 

Euh personne ne l'a vu ce qui me mettrait presque le doute mais... il manque pas un FROM dans ta requête ? :D

n°1077792
twist85
Posté le 10-05-2005 à 14:13:02  profilanswer
 

Merci bcp déjà ça de fait (Big noob je suis :/ )
 
Mais j'ai encore l'erreur suivante qui me pose probléme depuis de nombreux jours :
 
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource
 
A quoi sa correspond ?

n°1077793
gfa
Posté le 10-05-2005 à 14:13:40  profilanswer
 

crazywolf a écrit :

Euh personne ne l'a vu ce qui me mettrait presque le doute mais... il manque pas un FROM dans ta requête ? :D


Aaaaaaaaarghhh fallait pas le dire :non: :pt1cable:  
 
Enfin remarque je l'ai déjà dit... Mais bon c'était un peu plus... Discret:

Citation :


C'est vrai qu'on est un peu aveuglé par toutes ces couleurs mais quand même on voit facilement où se trouve l'erreur... Une erreur de from... euh pardon de forme on dira


 
M'enfin peut-être que ça aidera twist85 finalement :kaola:

n°1077794
Friday Mon​day
Trop de hérissons écrasés...
Posté le 10-05-2005 à 14:14:04  profilanswer
 

twist85 a écrit :

Ma puissance du débutant ne voie pas trop comment tester une viriable sans l'afficher ?


 
Tu ne connais pas le mot clé "if" ?  :heink:  
Si c'est n'est pas le cas, lis une doc sur PHP.

n°1077795
Friday Mon​day
Trop de hérissons écrasés...
Posté le 10-05-2005 à 14:14:21  profilanswer
 

crazywolf a écrit :

Euh personne ne l'a vu ce qui me mettrait presque le doute mais... il manque pas un FROM dans ta requête ? :D


Chuuut :D

n°1077796
crazywolf
Posté le 10-05-2005 à 14:15:33  profilanswer
 

ça veut dire que ce que tu passes à mysql_fetch_array n'est pas bon, donc que ta requête est fausse. J'ai la flemme de tester mais si ta requête est juste mais qu'il n'y a pas de réponse ça te met peut-être l'erreur aussi, j'ai oublié.

n°1077799
crazywolf
Posté le 10-05-2005 à 14:17:34  profilanswer
 

Oups j'avoue avoir zappé les réponses au milieu, j'ai vu qu'il etait encore dessus donc g posté sinon j'aurai laissé courir :)

n°1077812
twist85
Posté le 10-05-2005 à 14:27:00  profilanswer
 

MERCCCCCCCCCCCIIIIIIIIIIIIIIIIIIIIIIIIII j'ai réussi MERCI BCP  
MERCIIIIIIIIIIIIIIi mille fois merci merci merci merci j'ai trouver mes erreurs merci bcp de vos conseil encore merci milles fois PHP/SQL POwaaaaaaaaa merci pour tous merci encore merci merci merci

n°1077886
sircam
I Like Trains
Posté le 10-05-2005 à 15:02:55  profilanswer
 

[:kiki]


---------------
Now Playing: {SYNTAX ERROR AT LINE 1210}
n°1077892
gfa
Posté le 10-05-2005 à 15:05:45  profilanswer
 

twist85 a écrit :

MERCCCCCCCCCCCIIIIIIIIIIIIIIIIIIIIIIIIII j'ai réussi MERCI BCP  
MERCIIIIIIIIIIIIIIi mille fois merci merci merci merci j'ai trouver mes erreurs merci bcp de vos conseil encore merci milles fois PHP/SQL POwaaaaaaaaa merci pour tous merci encore merci merci merci


:jap: Ceux qui t'ont aidé te remercie :jap:  
 
N'oublie pas le tag [Résolu], ça peut servir...
 
Et puis allez, publie nous ton code corrigé comme ça ça pourra aider d'autres personnes qui rencontrent le même problème que toi-
 
A+

n°1077938
jagstang
Pa Capona ಠ_ಠ
Posté le 10-05-2005 à 15:33:04  profilanswer
 

super les failles d'injections....


---------------
What if I were smiling and running into your arms? Would you see then what I see now?  
n°1077991
crazywolf
Posté le 10-05-2005 à 15:54:55  profilanswer
 

jagstang a écrit :

super les failles d'injections....


 
C'est un débutant donc soit tu l'aides soit tu te tais mais tu critiques pas gratuitement. Y'a des failles qui te dérangent ? Eh bah liste les ton post aura au moins cet intérêt (je ne te demande pas de donner les solutions bien sur, pas à toi...).


Message édité par crazywolf le 10-05-2005 à 15:55:30
n°1077994
jagstang
Pa Capona ಠ_ಠ
Posté le 10-05-2005 à 15:56:20  profilanswer
 

crazywolf a écrit :

C'est un débutant donc soit tu l'aides soit tu te tais mais tu critiques pas gratuitement. Y'a des failles qui te dérangent ? Eh bah liste les ton post aura au moins cet intérêt (je ne te demande pas de donner les solutions bien sur, pas à toi...).


 [:tartalap]


---------------
What if I were smiling and running into your arms? Would you see then what I see now?  
n°1078024
jagstang
Pa Capona ಠ_ಠ
Posté le 10-05-2005 à 16:04:12  profilanswer
 

http://www.phpsecure.info/v2/article/InjSql.php


---------------
What if I were smiling and running into your arms? Would you see then what I see now?  
n°1078028
crazywolf
Posté le 10-05-2005 à 16:07:01  profilanswer
 


 
Bah voilà !! ça c'est du post intéressant, suffit de demander en fait   ;)

n°1078920
twist85
Posté le 11-05-2005 à 10:08:26  profilanswer
 

je vous envoie sa tt de suite

mood
Publicité
Posté le   profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  [URGENT Erreur SQL] Moteur de recherche PHP/SQL via formulaire HTML

 

Sujets relatifs
Comportement de la fonction validate (PEAR:HTML_QuickForm)Erreur sur procedure stockée Oracle
Impossible de trouver ce champ de formulaire...recherche dans dossier et sous dossier
[Débutant] Requête Sql[PHP] Fonction mail() avec HTML ET piece jointe ?
Erreur de synthaxeHébergeur Web Cherche Codeur PHP Urgent
Plus de sujets relatifs à : [URGENT Erreur SQL] Moteur de recherche PHP/SQL via formulaire HTML


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR