mysql_fetch_query & galerie photo

mysql_fetch_query & galerie photo - PHP - Programmation

Marsh Posté le 06-09-2004 à 11:37:38    

salut,
il me sort une erreur, je ne vois pas pourquoi:
 

$requete = mysql_query("SELECT * FROM musee WHERE rubrique=$POST_['rubrique']" );
$lgn = mysql_fetch_array($requete);


 
un indice svp...
merci


Message édité par kameha le 07-09-2004 à 10:17:35
Reply

Marsh Posté le 06-09-2004 à 11:37:38   

Reply

Marsh Posté le 06-09-2004 à 11:38:12    

et l'erreur? [:gratgrat]

Reply

Marsh Posté le 06-09-2004 à 11:40:16    

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/courchev/www/include/fr/pages/musee-fiche.php on line 5

Reply

Marsh Posté le 06-09-2004 à 11:42:08    

c'est ta requete qui doit pas etre bonne
 
mysql_query("SELECT * FROM musee WHERE rubrique=".$POST_["rubrique"]);  
 

Reply

Marsh Posté le 06-09-2004 à 11:44:58    

tjrs la meme erreur avec ça:
 

$requete = mysql_query("SELECT * FROM musee WHERE rubrique=".$POST_["rubrique"]);  
$lgn = mysql_fetch_array($requete);


 
 :pt1cable:

Reply

Marsh Posté le 06-09-2004 à 11:46:18    

erreur a la con LOL
 
c'est $_POST pas $POST_ :)

Reply

Marsh Posté le 06-09-2004 à 11:48:37    

effectivement
 
tjrs la meme erreur cependant:
il me dit "on line 5"
ds ma page, ligne 5 =

$lgn = mysql_fetch_array($requete);


 
c'est bien la dedans qu'il devrait y avoir une erreur?


Message édité par kameha le 06-09-2004 à 11:49:38
Reply

Marsh Posté le 06-09-2004 à 11:49:46    

ben disons qu'il cherche a executer la requete a la ligne 5, mais comme ta requete est tapé ligne 4 ben faut voir ligne 4 :o

Reply

Marsh Posté le 06-09-2004 à 11:52:40    

j'ai pas une erreur de " la dedans:

("SELECT * FROM musee WHERE rubrique=".$_POST["rubrique"])


 
?

Reply

Marsh Posté le 06-09-2004 à 11:54:16    

remplace les " par des ' c plus sympas  :o  
 
sinon c un entier rubrique ?  :)


Message édité par neogally le 06-09-2004 à 11:54:30
Reply

Marsh Posté le 06-09-2004 à 11:54:16   

Reply

Marsh Posté le 06-09-2004 à 11:56:56    

jlai ecrit comme ça

("SELECT * FROM musee WHERE rubrique=.$_POST['rubrique']" )


ça peut pas etre mieux la non?
 
 
Si rubrique est un entier?
ça veut dire quoi exactement?
En tout cas, il se présente sous la forme = '1900', 'debut'...

Reply

Marsh Posté le 06-09-2004 à 11:58:00    

("SELECT * FROM musee WHERE rubrique='".$_POST['rubrique']."'" )
 
aucune raison que ca marche pas :o


Message édité par Profil supprimé le 06-09-2004 à 12:00:04
Reply

Marsh Posté le 06-09-2004 à 11:59:28    

ben donc c un varchar donc ta requette est fausse
 
("SELECT * FROM musee WHERE rubrique='".$_POST['rubrique']."'" )  
 
ca devrai bien mieu marcher :)

Reply

Marsh Posté le 06-09-2004 à 12:03:12    

'rubrique' est un text
 
 
jme suis planté ou quoi?

Reply

Marsh Posté le 06-09-2004 à 12:09:21    

en fait dans ta requete, l'argument de ton where doit etre entre cote s'il s'agit d'un string (donct, text ou varchar) mais pas s'il s'agit d'un numérique, c'est pour ça qu'on t'a demandé si c'était un entier...
 
tu ne t'es pas planté si tu dois stocker autre chose que des nombres dans "rubrique", sinon oui tu t'es planté car tu aurais du le déclarer comme entier par exemple... ;)


---------------
- Xav - ...There are no crimes when there are no laws... -- Xav's World
Reply

Marsh Posté le 06-09-2004 à 12:49:42    

la requette que je tai proposé marche si dans ta base rubrique est un text

Reply

Marsh Posté le 06-09-2004 à 13:55:25    

donc cela devrait marcher:

$requete = mysql_query("SELECT * FROM musee WHERE rubrique='".$_POST['rubrique']."'" );


 
jveux pas etre lourdingue mais ç'est pas le cas.


Message édité par kameha le 06-09-2004 à 13:55:44
Reply

Marsh Posté le 06-09-2004 à 14:09:31    

Essaie de faire un truc comme ca pour tester :

Code :
  1. $sql=SELECT * FROM musee WHERE rubrique='".$_POST['rubrique']."'";
  2. echo $sql; // Pour afficher la requete
  3. $requete = mysql_query($sql);

Reply

Marsh Posté le 06-09-2004 à 14:13:46    

il doit y avoir une ptite erreur dans ta ligne 2...

Reply

Marsh Posté le 06-09-2004 à 14:15:23    

la requête ne retourne rien c'est tout [:spamafote]
 
donc

Code :
  1. $requete = mysql_query($sql) or die(mysql_error());

Reply

Marsh Posté le 06-09-2004 à 14:16:02    

kameha a écrit :

il doit y avoir une ptite erreur dans ta ligne 2...


évidemment, il manque un " au début. Ca doit être une faute de frappe.

Reply

Marsh Posté le 06-09-2004 à 14:17:03    

attendez ça va un peu vite
pour l'instant j'ai donc ça:
 

<?php
 include("db_tools/db_connect.inc" );
 
$sql=SELECT * FROM musee WHERE rubrique='".$_POST['rubrique']."'";  
echo $sql; //Pour afficher la requete
$lgn = mysql_fetch_array($requete);  
?>

Reply

Marsh Posté le 06-09-2004 à 14:18:15    

Ayuget a écrit :

évidemment, il manque un " au début. Ca doit être une faute de frappe.


 
ok
donc ça me donne cette erreur:

SELECT * FROM musee WHERE rubrique=''
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/courchev/www/include/fr/pages/musee-fiche.php on line 6

Reply

Marsh Posté le 06-09-2004 à 14:18:19    

Ptet qu'il a envie d'avoir un link identifier pour la connexion à la BDD comme deuxième argument du mysql_query() ?


---------------
Faux & usage de faux ¤ Machins roses ¤ ASCIImage ¤ HFR Enhance v0.8.6
Reply

Marsh Posté le 06-09-2004 à 14:18:45    

kameha a écrit :

il doit y avoir une ptite erreur dans ta ligne 2...


 
dans le code de Lord ii, c'est à la ligne 1 qu'il y a une erreur, il manque une double cote avant le SELECT.
 
EDIT:  
ok pour moi, en plus grilled par Ayuget.
sinon, d'acord avec le fait que la requete ne dois rien retourner, donc pb avec le mysql_fetch_array...
Pour savoir le nd d'enreistrement retourné (et donc voir si c'est supérieur à 0), essai un $nb_ligne=mysql_num_row($requete);


Message édité par Xav_ le 06-09-2004 à 14:25:02

---------------
- Xav - ...There are no crimes when there are no laws... -- Xav's World
Reply

Marsh Posté le 06-09-2004 à 14:18:58    

Reply

Marsh Posté le 06-09-2004 à 14:19:44    

plus sérieusement fait ce que je t'ai dit plus haut.

Reply

Marsh Posté le 06-09-2004 à 14:19:55    


 
jme demandais quand est ce que le lien allait tomber

Reply

Marsh Posté le 06-09-2004 à 14:21:08    

Xav_ a écrit :

dans le code de Lord ii, c'est à la ligne 1 qu'il y a une erreur, il manque une double cote avant le SELECT.


 
Il a corrigé cet oubli ( de frappe ) de ma part tout seul. Néamoins cela a permis de voir la tete se sa requète et que le paramètre passé en post est vide. Cela ne correspond surement pas au focntionnement attendu

Reply

Marsh Posté le 06-09-2004 à 14:23:07    

Et un "SELECT * FROM musee" ça fonctionne ou pas ?


---------------
Faux & usage de faux ¤ Machins roses ¤ ASCIImage ¤ HFR Enhance v0.8.6
Reply

Marsh Posté le 06-09-2004 à 14:23:22    

kameha a écrit :

jme demandais quand est ce que le lien allait tomber


bah attend c'est limite si tu te fout de notre gueule, demander ou est la faute lorsqu'il manque un quote à la deuxième ligne du script, c'est qu'on a pas les bases .|
 

Reply

Marsh Posté le 06-09-2004 à 14:25:48    

oki lord ii, j'ai édité mon post ;)


---------------
- Xav - ...There are no crimes when there are no laws... -- Xav's World
Reply

Marsh Posté le 06-09-2004 à 14:26:51    

meme ça ne marche pas

$requete = mysql_query("SELECT * FROM musee" );
$lgn = mysql_fetch_array($requete);

Reply

Marsh Posté le 06-09-2004 à 14:28:32    

essai ce que j'ai mis dans le edit de mon post d'avant --> mysql_num_rows pour voir s'il y a bien des enregistrements retourné par la requete !!!


Message édité par Xav_ le 06-09-2004 à 14:28:47

---------------
- Xav - ...There are no crimes when there are no laws... -- Xav's World
Reply

Marsh Posté le 06-09-2004 à 14:33:46    

Donc ça:

$requete = mysql_query("SELECT * FROM musee" );
$nb_ligne = mysql_num_rows($requete);


 
me donne ça:

Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /home/courchev/www/include/fr/pages/musee-fiche.php on line 5

Reply

Marsh Posté le 06-09-2004 à 14:33:48    

kameha a écrit :

meme ça ne marche pas

$requete = mysql_query("SELECT * FROM musee" );
$lgn = mysql_fetch_array($requete);




 

Freekill a écrit :

Ptet qu'il a envie d'avoir un link identifier pour la connexion à la BDD comme deuxième argument du mysql_query() ?


---------------
Faux & usage de faux ¤ Machins roses ¤ ASCIImage ¤ HFR Enhance v0.8.6
Reply

Marsh Posté le 06-09-2004 à 14:34:57    

Code :
  1. // Essaie de se connecter à la BDD
  2. $res = @mysql_connect($mysql_server,$mysql_login,$mysql_pwd);
  3. if ($res == 0)
  4. {
  5. die("Erreur de connexion au serveur SQL.","" );
  6. }
  7. elseif (!mysql_select_db($mysql_dbname,$res))
  8. {
  9. die("Erreur de connexion à la BDD.","" );
  10. }


---------------
Faux & usage de faux ¤ Machins roses ¤ ASCIImage ¤ HFR Enhance v0.8.6
Reply

Marsh Posté le 06-09-2004 à 14:38:43    

j'ai ça dans mon fichier db_connect:

<?php
  $serveur = '...' ;
  $utilisateur = '...' ;
  $password = '... ;
  $mysql_db = '..';
 
  $db = mysql_connect($serveur,$utilisateur,$password);
  mysql_select_db($mysql_db, $db) or die("PB de connexion à la base " );
?>


 
ça devrait suffir non?

Reply

Marsh Posté le 06-09-2004 à 14:39:52    

en tout cas avec ton code FreeKill, il me dit:
'Erreur de connexion à la BDD'

Reply

Marsh Posté le 06-09-2004 à 14:42:53    

kameha a écrit :

j'ai ça dans mon fichier db_connect:
 
ça devrait suffir non?


 
Si c'est bien exécuté avant, oui.
 
Un "echo $db;" sur la page où tu as un problème donne quoi ?


---------------
Faux & usage de faux ¤ Machins roses ¤ ASCIImage ¤ HFR Enhance v0.8.6
Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

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