par
bubu666 » 22 mai 2007, 10:46
Bonjour,
J'ai un de mes site qui vient de migrer d'un serveur php4 sous php5. Désormais j'ai un petit problème avec mes objets.
Objet : (je réalise une requete et je stocke le résultat dans un tableau que je retourne)
<?php
<?
class Item {
var $idItem;
var $nom;
var $descriptif;
function loadItem() {
$sql = "SELECT idItem, nom, descriptif FROM item ORDER BY idItem ASC LIMIT 2";
$req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
while($data = mysql_fetch_assoc($req)){
$this->idItem = $data['idItem'];
$this->nom = $data['nom'];
$this->descriptif = $data['descriptif'];
$t[] = $this;
}
return $t;
}
}
?>
Lorsque je realise une print_r sur le tableau qui m'est retourné les deux enregistrements de mon tableaux sont identiques. Autrement dit, il contient 1 seul item en double alors que lorsque je fait un print_r sur $this dans ma classe à cette ligne :
print_r($this);
$t[] = $this;
Il me sort bien 2 items différents. C'est un peu comme si à chaque nouvel enregistrement dans ma table $t, ce dernier m'écrase tout les précédents.
Je ne sais pas si j'ai été très clair. Merci pour votre aide.
Yohann