Se connecter / S'enregistrer
Votre question

[PHP] Même objet dans deux pages différentes ?

Tags :
  • Programme
  • Programmation
Dernière réponse : dans Programmation
1 Mars 2010 17:33:24

Bonjour
J'ai problème d'objet, je souhaiterais utiliser le même objet issu de la même classe dans deux pages php différentes.
alors dans index1.php
J'ai instancié ma class User qui s'appelle $client en surchargeant la class avec la méthode __construct.
  1. $client=new User($id,$ip,$date);

Et dans logout.php
J'ai instancier ma class User qui porte le même nom mais sans surcharge.
  1. <?php
  2. include ("./user.class.php");
  3. $client1=new User();
  4. $client1->deconnexion();
  5. ?>

User.class.php
  1. <?php
  2.  
  3. class User{
  4. private $log_in;
  5. private $mot_de_pass;
  6. private $d;
  7. private $time;
  8. private $adresse_ip;
  9. private $id_session;
  10.  
  11. public function __construct($id,$ip,$date){
  12. $this->id_session=$id;
  13. $this->adresse_ip=$ip;
  14. $this->d=$date;
  15. }
  16.  
  17. public function deconnexion(){
  18. $tu=session_start ();
  19. session_unset ();
  20. $test=session_destroy ();
  21. if($test){
  22. echo $tu;
  23. //header ('location: index.html');
  24. }
  25. else{
  26. return $test;
  27. }
  28. }
  29. public function setUpdate(){
  30. $result=mysql_query("INSERT INTO tbl_user_info VALUES('','.$this->id_session','.$this->adresse_ip','.$this->d','')");
  31. if (!$result){
  32. throw new exception ('Impossible d enregistrer!');
  33. }
  34. }
  35. public function setDeco(){
  36. }
  37. }
  38.  
  39. ?>


Mais j'ai ce message d'erreur qui apparait:

Warning: Missing argument 1 for User::__construct(), called in D:\Programme\wamp\www\exo\logout.php on line 3 and defined in D:\Programme\wamp\www\exo\user.class.php on line 11

Warning: Missing argument 2 for User::__construct(), called in D:\Programme\wamp\www\exo\logout.php on line 3 and defined in D:\Programme\wamp\www\exo\user.class.php on line 11

Warning: Missing argument 3 for User::__construct(), called in D:\Programme\wamp\www\exo\logout.php on line 3 and defined in D:\Programme\wamp\www\exo\user.class.php on line 11

Notice: Undefined variable: id in D:\Programme\wamp\www\exo\user.class.php on line 12

Notice: Undefined variable: ip in D:\Programme\wamp\www\exo\user.class.php on line 13

Notice: Undefined variable: date in D:\Programme\wamp\www\exo\user.class.php on line 14
1


La méthode déconnexion() semble marcher puisque ca me renvoie 1..
Pour éviter ce problème je doit faire quoi?
Utiliser __destruct()?
Cordialement

Autres pages sur : php objet pages differentes

1 Mars 2010 20:33:15

On dirait une faille SQL ça ? " line 12 ect ... " cela est la colonne ça ta une erreur de codage dans ton

user.class.php

m
0
l
1 Mars 2010 20:55:48

Nan ce n'est pas une faille SQL je t'assure, j'essaye juste de faire passer un objet de page en page....
m
0
l
Contenus similaires
Pas de réponse à votre question ? Demandez !
1 Mars 2010 21:03:28

okk c quoi comme genre d'objet une aniamtion gif ?

m
0
l
a c 232 L Programmation
6 Mars 2010 01:13:45

Tu as un problème parce que tu n'as pas de constructeur sans paramètre.
Tu ne peux pas faire $client1=new User(); sans avoir de constructeur sans paramètre (sauf si tu n'as aucun constructeur et auquel cas tu auras le constructeur par défaut, mais ce n'est pas le cas ici).
m
0
l
6 Mars 2010 12:08:56

J'ai régler ce problème avec les $_SESSION;
Merci
Ciao
m
0
l
Tom's guide dans le monde
  • Allemagne
  • Italie
  • Irlande
  • Royaume Uni
  • Etats Unis
Suivre Tom's Guide
Inscrivez-vous à la Newsletter
  • ajouter à twitter
  • ajouter à facebook
  • ajouter un flux RSS