IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

Comment exécuter une requête SQL au seins d'une fonction?


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Septembre 2010
    Messages
    128
    Détails du profil
    Informations forums :
    Inscription : Septembre 2010
    Messages : 128
    Par défaut Comment exécuter une requête SQL au seins d'une fonction?
    Bonjour,

    Comment exécuter et exploiter les données d'une requête SQL inclus dans une fonction?

    Par exemple pour la requête suivante ou je souhaite utiliser les données en dehors de la boucle :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    $article = mysql_query("SELECT id,titre FROM CONTENU WHERE id=$id",dbconnect());
    while ($menu = mysql_fetch_array($article)) {
    	$identifiant = $menu['id'];
    	$titre = $menu['titre'];
    }
    echo $identifiant.'-'.$titre;
    Supposons que je veuille le même résultat mais que la requête soit au seins d'une fonction :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    function article($id){
    	$article = mysql_query("SELECT id,titre FROM CONTENU WHERE id=$id",dbconnect());
    	//?????
    	return ??;
    	}
    Comment procède t'on?

    Merci

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Même dans le premier cas, passer par $identifiant et $titre n'est pas utile.
    Tu peux faire
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre extrêmement actif
    Avatar de MarieKisSlaJoue
    Homme Profil pro
    Ingénieur Cloud
    Inscrit en
    Mai 2012
    Messages
    1 145
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Roumanie

    Informations professionnelles :
    Activité : Ingénieur Cloud
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2012
    Messages : 1 145
    Billets dans le blog
    20
    Par défaut
    Visiblement c'est le quoi retourner qui te pose problème. Selon ce que ta requête fait tu peux renvoyer directement un objet. Ou bien les informations envoyé par la requête dans un tableau associatif comme tu as fait plus haut..
    Ce post à été écrit par un panda
    Apollo 11 - AGC revue de code
    -- qwerty keybord

  4. #4
    Membre confirmé
    Inscrit en
    Septembre 2010
    Messages
    128
    Détails du profil
    Informations forums :
    Inscription : Septembre 2010
    Messages : 128
    Par défaut
    Merci de vos réponses mais je n'ai toujours pas comprit .
    Si je fais (en supposant que ce soit correcte):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    function article($id){
    	$article = mysql_query("SELECT id,titre FROM CONTENU WHERE id=$id",dbconnect());
    	$menu = mysql_fetch_array($article);
    	return $menu;
    }
    Comment je procède pour obtenir le résultat de la variable id et titre en dehors de la fonction?

    Au début je pensais à un simple echo $menu['titre']; et idem pour l'id mais ça aurait été trop simple ...

  5. #5
    Membre émérite
    Avatar de amoiraud
    Homme Profil pro
    Développeur Web
    Inscrit en
    Octobre 2006
    Messages
    606
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Octobre 2006
    Messages : 606
    Par défaut
    Salut,

    Etant donné que ta fonction article ne retourne qu'un résultat, utilise plutot mysql_fetch_row() :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    function article($id){
    	$article = mysql_query("SELECT id,titre FROM CONTENU WHERE id=$id",dbconnect());
    	$menu = mysql_fetch_row($article);
    	return $menu;
    }
    Et pour afficher le résultat il suffit de faire un echo $menu['titre']; comme tu le pensait

  6. #6
    Membre confirmé
    Inscrit en
    Septembre 2010
    Messages
    128
    Détails du profil
    Informations forums :
    Inscription : Septembre 2010
    Messages : 128
    Par défaut
    Undefined variable: menu in ...
    A chaque fois que je tente un truc, j'y ai le droit à celle là ^^.

Discussions similaires

  1. Réponses: 4
    Dernier message: 13/10/2013, 22h47
  2. Réponses: 1
    Dernier message: 25/06/2007, 16h33
  3. [Débutant][SQL] Requête SQL à l'intérieur d'une requête SQL
    Par Kily10 dans le forum Requêtes et SQL.
    Réponses: 4
    Dernier message: 27/10/2006, 11h54
  4. Réponses: 8
    Dernier message: 11/08/2006, 09h30
  5. Réponses: 6
    Dernier message: 20/06/2006, 14h49

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo