Modifier le contenu d'un tableau associatif
Hello,
J'aimerai remplacer le contenu d'un champ d'un tableau associatif par une valeur retourné par une fonction. Je n'y arrive pas...
Voici mon code, la ligne 9 est l'endroit où j'essaie de réaliser le changement de valeur. J'ai aussi mis la fonction qui fournie la valeur. Question subsidiaire: Dans ma fonction, au lieu de retourner la variable "$manager" qui contient le contenu de "$mgrlst['full_name']" comment est ce que je pourrai retourner directement le contenu de "$mgrlst['full_name']"
La fonction fonctionne parfaitement et me retourne bien une chaine de caractère. L'erreur que j'obtiens à l'exécution est : "Fatal error: Cannot use object of type stdClass as array in..". elle indique la ligne 9 comment étant la fautive.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
| <?php
$profile_key = verif_GetPost($_GET['profile_key']);
$sql="SELECT * FROM profiles WHERE profile_key='$profile_key' ";
$qid = mysql_query($sql);
if (!$qid) die ("Probleme : " . mysql_error());
$nligne= mysql_num_rows($qid);
$list=mysql_fetch_object( $qid);
//remplacement de la valeur par celle fournie par detect_manager
$list['manager']="detect_manager($profile_key)";
function detect_manager(&$profile_key)
{
global $connex;
$sql="SELECT left_lm, right_lm, level_lm FROM profiles WHERE profile_key='".($profile_key)."' ";
$qid = mysql_query($sql);
if (!$qid) die ("Probleme : " . mysql_error());
$row=mysql_fetch_assoc($qid);
$sql="SELECT full_name FROM profiles WHERE left_lm<$row[left_lm] AND right_lm>$row[right_lm] AND level_lm=$row[level_lm]-1";
$qid = mysql_query($sql);
$mgrlst=mysql_fetch_assoc($qid);
$manager=$mgrlst['full_name'];
return $manager;
}
?> |
Merci de votre aide