Lancer une fonction apres une requête SQL
Résolu
chantaussel
Messages postés
140
Statut
Membre
-
chantaussel Messages postés 140 Statut Membre -
chantaussel Messages postés 140 Statut Membre -
Bonjour,
Voilà mon problème:
J'ai créé une fonction qui vise à récupérer des données après avoir fait une requête SQL, mais elle ne me retourne aucune donnée... Voilà mon code (un peu raccourci):
La fonction tab_leaf:
La requête suivie de l'appel de la fonction:
La requête fonctionne car les données du champ 'generation' sont bien stockées dans la variable $leaf[1][10] , par contre le reste de l'array ($leaf[1][0] , $leaf[1][1] ...) reste totalement vide...
Merci d'avance!
Voilà mon problème:
J'ai créé une fonction qui vise à récupérer des données après avoir fait une requête SQL, mais elle ne me retourne aucune donnée... Voilà mon code (un peu raccourci):
La fonction tab_leaf:
function tab_leaf($i)
{
$leaf[$i][0] = $donnees['id'];
$leaf[$i][1] = $donnees['nom'];
$leaf[$i][2] = $donnees['prenom'];
return $leaf[$i];
}
La requête suivie de l'appel de la fonction:
$reponse = mysql_query("SELECT *, DATE_FORMAT(date_n, '%d-%m-%Y') AS date_n, DATE_FORMAT(date_d, '%d-%m-%Y') AS date_d FROM leaves WHERE id='$id'");
$donnees = mysql_fetch_array($reponse);
$leaf[1] = tab_leaf(1);
$leaf[1][10] = $donnees['generation'];
La requête fonctionne car les données du champ 'generation' sont bien stockées dans la variable $leaf[1][10] , par contre le reste de l'array ($leaf[1][0] , $leaf[1][1] ...) reste totalement vide...
Merci d'avance!
A voir également:
- Lancer une fonction apres une requête SQL
- Fonction si et - Guide
- Lancer une application au démarrage windows 10 - Guide
- Fonction miroir - Guide
- Comment colorer une cellule excel en fonction du contenu d'une autre cellule ✓ - Forum Excel
- Fonction moyenne excel - Guide
4 réponses
Dans une fonction , on ne peut utiliser que ses variables locaux ou les variables globales
donc , il faut mettre le requête au sein de la fonction :)
donc , il faut mettre le requête au sein de la fonction :)
Alors , la solution est de mettre le résultat de la requête dans une variable puis la passer dans l'entête de la fonction
exemple :
$resultat = résultat de la requête , ça sera sous forme d'un Array
tu appel la fonction sous cette forme
function tatata($resultat);
et du la déclare sous cette forme
function tatata($resultat){
tes traitement ici en utilisant $resultat
}
exemple :
$resultat = résultat de la requête , ça sera sous forme d'un Array
tu appel la fonction sous cette forme
function tatata($resultat);
et du la déclare sous cette forme
function tatata($resultat){
tes traitement ici en utilisant $resultat
}
Youhou ça marche, merci!
Ca donne:
La fonction tab_leaf:
La requête suivie de l'appel de la fonction:
Ca donne:
La fonction tab_leaf:
function tab_leaf($i, $donnees)
{
$leaf[$i][0] = $donnees['id'];
$leaf[$i][1] = $donnees['nom'];
$leaf[$i][2] = $donnees['prenom'];
return $leaf[$i];
}
La requête suivie de l'appel de la fonction:
$reponse = mysql_query("SELECT *, DATE_FORMAT(date_n, '%d-%m-%Y') AS date_n, DATE_FORMAT(date_d, '%d-%m-%Y') AS date_d FROM leaves WHERE id='$id'");
$donnees = mysql_fetch_array($reponse);
$leaf[1] = tab_leaf(1, $donnees);
$leaf[1][10] = $donnees['generation'];