21-02-2007, 08:30 PM
(Modification du message : 21-02-2007, 09:11 PM par rat_eat_hamster.)
alors disons que j'ai une classe user dans le genre
donc elle crée des membres dynamiquement à partir de la base de donnée(pour éviter de taper tous les membres et gérer les modifs)
en fait mon problème c'est que quand je crée une instance et que je la mets dans une session j'arrive pas à récuperer les membres dynamiques sur une AUTRE page
page1:
page2:
d'après ce que j'ai compris c que php ne mets dans la session que les membres déclarés dans la classe...
quelqu'un a t-il était confronté au mem problème?
ya t-il un moyen d'ajouter dynamiquement des membres à la classe et pas à l'instance?
une idée?(h)
Code :
class Cuser
{
function LoadByName( $name )
{
$res = query( 'SELECT * FROM user WHERE name=\'' . $name . '\'' );
$user = mysql_fetch_assoc( $res );
$res = query( 'SHOW FULL COLUMNS FROM user' );
while( $col = mysql_fetch_assoc( $res ) )
{
if( preg_match( '/(int)|(float)|(bool)/i', $col['Type'] ) )
$string = '$this->'.$col['Field'].'='.$user[$col['Field']].';';
else
$string = '$this->'.$col['Field'].'=\''.$user[$col['Field']].'\';';
eval( $string );
}
}
}
donc elle crée des membres dynamiquement à partir de la base de donnée(pour éviter de taper tous les membres et gérer les modifs)
en fait mon problème c'est que quand je crée une instance et que je la mets dans une session j'arrive pas à récuperer les membres dynamiques sur une AUTRE page
page1:
Code :
$user = new Cuser();
$user->LoadByName('un_pseudo');
$_SESSION['user'] = $user;
page2:
Citation :echo $_SESSION['user']->id;// n'affiche rien
echo $_SESSION['user'];//affiche bien Object
d'après ce que j'ai compris c que php ne mets dans la session que les membres déclarés dans la classe...
quelqu'un a t-il était confronté au mem problème?
ya t-il un moyen d'ajouter dynamiquement des membres à la classe et pas à l'instance?
une idée?(h)