[RESOLU] afficher contenu objet

Invité
Invité n'ayant pas de compte PHPfrance

10 nov. 2007, 17:19

Bonjour à tous,

j'ai chargé des données (liste de prénoms + user id) dans un objet $row.
quand je fais var_dump($row), j'ai ceci:
1 array(1) { [0]=> object(stdClass)(2) { ["user_id"]=> string(4) "1084" ["firstname"]=> string(6) "Samira" } } 
2 array(1) { [0]=> object(stdClass)(2) { ["user_id"]=> string(3) "849" ["firstname"]=> string(4) "Eddy" } }  
3 array(1) { [0]=> object(stdClass)(2) { ["user_id"]=> string(3) "724" ["firstname"]=> string(10) "Christophe" } }  
4 array(1) { [0]=> object(stdClass)(2) { ["user_id"]=> string(4) "1085" ["firstname"]=> string(6) "Hourie" } }  
5 array(1) { [0]=> object(stdClass)(2) { ["user_id"]=> string(3) "149" ["firstname"]=> string(9) "Gabrielle" } } 
Etant habitué aux tableaux, j'ai tenté ceci pour afficher le prénom "samira" qui a pour id "1084":
echo $row->firstname(1084);
Mais ça ne marche pas.
Comment puis-je faire pour afficher un prénom en passant l'id de mon user en paramètre?

Eléphant du PHP | 445 Messages

10 nov. 2007, 17:39

$row est un tableau contenant differentes instances d'une classe ayant comme valeur publique user_id et firstname.
// $row contient
$row[0]->user_id = "1084";
$row[0]->firstname = "Samira";

$row[1]->user_id = "849";
$row[1]->firstname = "Eddy";

$row[2]->user_id = "724";
$row[2]->firstname = "Christophe";

$row[3]->user_id = "1085";
$row[3]->firstname = "Hourrie";

$row[4]->user_id = "149";
$row[4]->firstname = "Gabrielle";
Me trompe je ?

Invité
Invité n'ayant pas de compte PHPfrance

10 nov. 2007, 17:54

ben je ne sais pas...ce qui est ur est que quand je fais par exemple pour afficher l'id:
$row[0]->user_id = "1084";
je n'ai rien en retour, même pas une erreur.
Je voudais en fait afficher un prénom en passant l'id correspondant à l'objet $row.

Invité
Invité n'ayant pas de compte PHPfrance

10 nov. 2007, 17:59

je mets le code complet, ça sera plus simple.
C'est du code joomla pour charger un liste d'utilisateurs:

  $q ="SELECT user_id, firstname FROM #__comprofiler WHERE user_id = " . $row->id;
  $database->setQuery($q);
  $row = $database->loadObjectList();
Ceci charge dans $row la liste dont le var_dum est affiché plus haut.

Je voudrais avec $row, afficher un prénom en passant l'id en paramètre, d'où ma tentative qui ne marche pas:
echo $row->firstname(1084);
Ce que je veux faire est-il possible avec un objet?

Invité
Invité n'ayant pas de compte PHPfrance

10 nov. 2007, 19:43

en gros, ya t-il un mécanisme qui ressemble au principe clé/valeur des tableaux en php?
si j'avais un tableau, il me suffirait de faire
echo $row['1084']
pour obtenir le prénom "samira".

Invité
Invité n'ayant pas de compte PHPfrance

10 nov. 2007, 20:14

pardon, je délire complètement.
echo $row[0]->fristname
m'affiche ce que je cherchais.
Merci bcp.