Pour le coup tu gardes quand même mon usine à gaz? :-)
A toi de voir entre les différentes solutions....
En tout cas si tu gardes la mienne, et si tu gardes ta fonction:
_ Est ce que tu l'utilises bien après soumission du formulaire et rechargement de la page?
Si c'est bien le cas:
function search_service($iduser)
Tu entre quoi comme paramètre quand tu l'utilises?
Tu écris search_service($_POST['iduser'])?
En ce cas pourquoi le recomparer par la suite à $_POST['iduser']?
if (isset($_POST['iduser']))
Si tu as entré $_POST['iduser'] comme paramètre de ta fonction ça ne sert plus à rien de vérifier si elle existe, l'erreur se sera déclarée avant ....
if ($_POST['iduser'] == $iduser)
Je ne pense pas que $_POST['iduser'] sera déclarée comme variable globale dans ta fonction mais c'est à vérifier... Si le tableau $_POST peut être utilisé comme variable locale dans une fonction alors elle sera locale (c'est à dire une variable utilisée uniquement dans ta fonction qui n'aura rien à voir avec le vrai $_POST)
$nomserv = $db->query_Read_Database("SELECT ID_DEST, LIB_DEST FROM destinataires d, users u WHERE u.ID_DEST=s.ID_DEST AND ID_USER='$iduser'");
Pour tester ta requête, rien ne vaut un echo avec le contenu de ta requête (en tant que simple chaine) que tu peux ensuite tester dans ta base plus directement ...
Si j'ai bien compris, $db est l'instanciation d'une classe déclarée avant ta fonction? Alors idem, $db est sûrement considéré comme une variable locale et non comme le véritable objet utilisé dans ton programme principal...
} //fin SI n°2
}//fin SI n°1
return $msg_erreur;
}//fin fonction
D'après ce que je lis ta fonction retournera toujours "Impossible d'afficher le nom du service!" :-)
Call to undefined function: search_service()
Visiblement tu utilises ta fonction sans l'avoir préalablement déclarée. Dans ton code tu dois sûrement te retrouver avec
"search_service($truc)" qui se situe avant "function search_service($iduser)"