Fonction de consultation de base, pas de retour

Résolu
Messages postés
14
Date d'inscription
lundi 17 mars 2003
Statut
Membre
Dernière intervention
7 septembre 2010
-
Messages postés
14
Date d'inscription
lundi 17 mars 2003
Statut
Membre
Dernière intervention
7 septembre 2010
-
Bonjour

j'ai un soucis avec ma fonction, celle ci ne retourne rien, le parametre arrive bien (si je le met en return il passe) et j'obtient un resultat si je met un valeur "texte" a la place de la variable

le code

Function donnee($art) {
 
 $requete= "SELECT * FROM produits WHERE 1 AND ref LIKE '$art'";
 $result=mysql_query($requete);
 list($code,$cat,$nom,$prix,$poids,$marque,$ref,$image)=mysql_fetch_row($result);
    $num_rows=mysql_num_rows($result);
    return array ($nom,$prix);
  
 }

$ref = $_SESSION['achats'][$i]['ref'];
$data=donnee($ref);

$ref contient bien qqch, mais $num_rows reste toujours a 0 sauf si je remplace $art par du texte (ou $ref dans l'appel)

Une idee de la solution?

merci

4 réponses

Messages postés
14
Date d'inscription
lundi 17 mars 2003
Statut
Membre
Dernière intervention
7 septembre 2010

rien du tout meme en mettant
return array ($nom,$prix, $num_rows);

en fait j'ai bien un ressource mais ca s'arrete la

donc en fouillant un peu j'ai trouve ce code sur  php.net

 $query = sprintf("SELECT * FROM produits WHERE ref='%s'",
   mysql_real_escape_string($art));
 
   $result = mysql_query($query);
   if (!$result) {
   $message  = 'Requête invalide : ' . mysql_error() . "\n";
   $message .= 'Requête complète : ' . $query;
   die($message);
}
 
   while ($row = mysql_fetch_assoc($result)) {
   $nom=$row['nom'];
   $prix=$row['prix'];
  
}
   return array($nom,$prix);

enfin bon ca marche mais je sais touours pas pk mon code ne fonctionne pas ici alors que tout le reste du site l'utilise sans probleme

merci R@f

Kazaam
Messages postés
2268
Date d'inscription
mercredi 27 novembre 2002
Statut
Membre
Dernière intervention
13 septembre 2013
3
Salut!
Tu devrais mettre le $num_rows=mysql_num_rows($result);
Avant le mysql_fatch_row! :)

@++

R@f

www.allpotes.ch: Photos, humour, vidéos, gags, ...
"On dit que seulement 10 personnes au monde comprenaient Einstein. Personne ne me comprends. Suis-je un génie???"
Messages postés
14
Date d'inscription
lundi 17 mars 2003
Statut
Membre
Dernière intervention
7 septembre 2010

hello
merci du conseil, j'avais mis comme ca au depart
j'ai reteste mais ca change rien toujours aucun retour
Kazaam
Messages postés
2268
Date d'inscription
mercredi 27 novembre 2002
Statut
Membre
Dernière intervention
13 septembre 2013
3
Comment ça aucun retour? Si tu veux un retour, il faut le faire: :)
return array ($nom,$prix, $num_rows);

@++

R@f

www.allpotes.ch: Photos, humour, vidéos, gags, ...
"On dit que seulement 10 personnes au monde comprenaient Einstein. Personne ne me comprends. Suis-je un génie???"