[RESOLU] Tableau NULL après return dans une fonction

Avatar du membre
Eléphanteau du PHP | 10 Messages

13 juil. 2016, 04:17

Bonjour,

Etant débutant surPHP, je prends des cheveux blancs depuis 2 jours. Je tourne rond car je n'arrive pas à retourner dans mon script le résultat d'un tableau qui est executer dans une fonction.

Ci dessous, le code php qui cause problème :
<?php


function bdd_select( string $query, array $params = [] ) {
  
    require 'inc/pdo.php'; //appel du fichier de connexion à la BDD

    
  if ( $params ) {
    $req = $bdd->prepare( $query );
    $req->execute( $params );
  }
  else {
    $req = $bdd->query( $query );
  }

  $donnees = $req->fetchAll();
    
    
    var_dump ($donnees); // premier var_dump() qui m'affiche le résultat de ma requete

   
        
  return $donnees;
}



bdd_select('SELECT email, password FROM client');

// deuxieme var_dump() AFFICHE ERREUR
// Notice: Undefined variable: donnees in C:\wamp\www\test_php\index.php on line 35
// C:\wamp\www\test_php\index.php:35:null

var_dump ($donnees); 


?>
Quelqu'un aurait une astuce ?

Merci par avance !

Mammouth du PHP | 1967 Messages

13 juil. 2016, 08:19

$donnees = bdd_select('SELECT email, password FROM client');

Lorsque tu retourne une variable avec une fonction, il te faut l'attribuer à une autre variable (qui peut cependant avoir le même nom) en dehors de ta fonction.
Spols
pour les fan de rubik's cube ou pour les curieux ==> le portail francophone du rubik's cube

Avatar du membre
Eléphanteau du PHP | 10 Messages

13 juil. 2016, 12:41

Super ça fonctionne ! je ne pensais pas à la portée des variables.

Merci pour votre aide !