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.
Merci de votre aide
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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; } ?>
Partager