La requête s'affiche a la place du resultat de celle ci

Résolu
tif27940 Messages postés 74 Date d'inscription lundi 24 janvier 2011 Statut Membre Dernière intervention 21 février 2012 - 24 janv. 2012 à 15:35
syndrael Messages postés 2378 Date d'inscription lundi 4 février 2002 Statut Membre Dernière intervention 29 décembre 2012 - 31 janv. 2012 à 10:41
Bonjour,

voila j'excecute une requête :
$cat="SELECT `category_name` 
FROM `j17_virtuemart_categories_fr_fr` 
WHERE `virtuemart_category_id`=(SELECT `category_parent_id` 
                                FROM `j17_virtuemart_category_categories` 
                                where `category_child_id`=$prow->virtuemart_category_id
                               )";
mysql_query($cat) or die ('Erreur SQL !'.$cat.'
'.mysql_error());


et lorsque je souhaite afficher mon résultat :
echo $cat;


voila se que j'obtient dans ma page :
SELECT `category_name` FROM `j17_virtuemart_categories_fr_fr` WHERE `virtuemart_category_id`=(SELECT `category_parent_id` FROM `j17_virtuemart_category_categories` where `category_child_id`=88)

je ne comprend pas pourquoi, j'ai testée dans phpmyadmin et elle fonctionne

merci de vos futurs reponses

7 réponses

syndrael Messages postés 2378 Date d'inscription lundi 4 février 2002 Statut Membre Dernière intervention 29 décembre 2012 19
31 janv. 2012 à 10:41
Et ta variables $donnees, elle se crée comment ?
Ou alors j'ai loupé un épisode.. LOL !!
S.
3
cs_Julien39 Messages postés 6414 Date d'inscription mardi 8 mars 2005 Statut Modérateur Dernière intervention 29 juillet 2020 367
24 janv. 2012 à 16:12
Bonjour,

La commande echo $cat affiche la requête et non le résultat, il faut que tu créé.

Voilà comment fonctionne l'interrogation d'une base en php (exemple tiré du site du zero)

<?php
try
{
    // On se connecte à MySQL
    $pdo_options[PDO::ATTR_ERRMODE] = PDO::ERRMODE_EXCEPTION;
    $bdd = new PDO('mysql:host=localhost;dbname=test', 'root', '', $pdo_options);
    
    // On récupère tout le contenu de la table jeux_video
    $reponse = $bdd->query('SELECT * FROM jeux_video');
    
    // On affiche chaque entrée une à une
    while ($donnees = $reponse->fetch())
    {
    ?>
        
        Jeu : <?php echo $donnees['nom']; ?>

        Le possesseur de ce jeu est : <?php echo $donnees['possesseur']; ?>, et il le vend à  <?php echo $donnees['prix']; ?>   euros !

        Ce jeu fonctionne sur <?php echo $donnees['console']; ?> et on peut y jouer à  <?php echo $donnees['nbre_joueurs_max']; ?> au maximum

        <?php echo $donnees['possesseur']; ?> a laissé ses commentaires sur <?php echo $donnees['nom']; ?> : <?php echo    $donnees['commentaires']; ?>
        


    <?php
    }
    
    $reponse->closeCursor(); // Termine le traitement de la requête

}
catch(Exception $e)
{
    // En cas d'erreur précédemment, on affiche un message et on arrête tout
    die('Erreur : '.$e->getMessage());
}


?>

0
cs_Julien39 Messages postés 6414 Date d'inscription mardi 8 mars 2005 Statut Modérateur Dernière intervention 29 juillet 2020 367
24 janv. 2012 à 16:13
0
tif27940 Messages postés 74 Date d'inscription lundi 24 janvier 2011 Statut Membre Dernière intervention 21 février 2012
24 janv. 2012 à 16:36
merci mais cela ne fonctionne pas
avec ma methode
$cat="SELECT `category_name` 
FROM `j17_virtuemart_categories_fr_fr` 
WHERE `virtuemart_category_id`=(SELECT `category_parent_id` 
                                FROM `j17_virtuemart_category_categories` 
                                where `category_child_id`=$prow->virtuemart_category_id
                               )";
$resultat = mysql_query($cat); 
echo $resultat; 


J'obtiens : Resource id #250
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_Julien39 Messages postés 6414 Date d'inscription mardi 8 mars 2005 Statut Modérateur Dernière intervention 29 juillet 2020 367
25 janv. 2012 à 07:44
Est ce que tu as fais exactement ce qui était dans l'exemple ou bien as tu fais un truc a peu près pareil mais pas tout à fait ?

Je dirais que tu es dans le deuxième cas. Alors essayes de reprendre en utilisant exactement le même code et ca marchera.

Un script fait ce que tu lui demandes et non pas ce que tu aimerais qu'il fasse.
0
syndrael Messages postés 2378 Date d'inscription lundi 4 février 2002 Statut Membre Dernière intervention 29 décembre 2012 19
25 janv. 2012 à 09:41
Moi sans vouloir te vexer je te dirais qu'au lieu de partir dans des Joomla, VirtueMart etc.. tu devrais te poser un peu et voir les bases de PHP.
- Interroger une base
- Comprendre le résultat
- Afficher le résultat dans une page.
Bon courage.
S.
0
tif27940 Messages postés 74 Date d'inscription lundi 24 janvier 2011 Statut Membre Dernière intervention 21 février 2012
31 janv. 2012 à 09:23
voila le code je n'ai pas de boucle puisque je n'ai qu'un seul resultat a afficher:

$pdo_options[PDO::ATTR_ERRMODE] = PDO::ERRMODE_EXCEPTION;
$bdd = new PDO('mysql:host=localhost;dbname=nombdd', 'id', 'mdp', $pdo_options);

$reponse = $bdd->query("SELECT `category_name` 
                        FROM `j17_virtuemart_categories_fr_fr` 
                        WHERE `virtuemart_category_id`=(SELECT `category_parent_id` 
                                                        FROM `j17_virtuemart_category_categories` 
                                                        where `category_child_id`='$prow->virtuemart_category_id')");

echo $donnees['category_name'];










0