login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Mysql Classes 2 (Opgelost)

Offline superdumb - 31/10/2007 11:29 (laatste wijziging 31/10/2007 11:31)
Avatar van superdumbNieuw lid Dit is de error;

[31-Oct-2007 11:17:53] PHP Notice : Trying to get property of non-object in D: \webserver\LocalUser\superdumb\index.php on line 5

dit is het bestand
lib/mysql.php
  1. <?php
  2. class db
  3. {
  4. protected $connect;
  5. protected $link;
  6. protected $user = 'superdumb';
  7. protected $pass = '******';
  8. protected $server = 'localhost';
  9. protected $query;
  10. protected $obj;
  11. public $output;
  12.  
  13. function __construct($db_name)
  14. {
  15. print ' Constructor treedt op ...';
  16. $this->connect = mysql_connect($this->server,$this->user,$this->pass);
  17. if(!($this->connect))
  18. {
  19. echo 'Geen connectie... ';
  20. die();
  21. }
  22. echo ' Connectie is er...';
  23. $this->link = mysql_select_db($db_name,$this->connect);
  24. if(!($this->link))
  25. {
  26. echo 'Database niet geselecteerd... ';
  27. die();
  28. }
  29. echo ' Database link is er...';
  30. }
  31.  
  32. function getdata()
  33. {
  34.  
  35.  
  36. function __construct($id,$table,$what)
  37. {
  38. $this->query = mysql_query("SELECT ".$what." FROM ".$table." WHERE id=".$id);
  39. if(!($this->query))
  40. {
  41. echo 'Query niet uitgevoerd';
  42. die();
  43. }
  44. echo ' Query uitgevoerd';
  45.  
  46. while ($this->obj = mysql_fetch_object($this->query))
  47. {
  48. $this->output = $this->obj->$what;
  49. }
  50. }
  51.  
  52. }
  53. }
  54. ?>

en dit index.php
  1. <?php
  2. require('lib/mysql.php');
  3. $db1 = new db('superdumb_db');
  4. $db1->getdata('1','tbl_users','firstname');
  5. echo $db1->output;
  6. ?>


Dit is ongeveer hetzelfde script als gisteren, alleen hier werkt ik met een classes met daarin meedere functies....

1 antwoord

Gesponsorde links
Offline marten - 31/10/2007 11:34
Avatar van marten Beheerder Je moet de construct eruit halen in de functie getData. Verder zou ik geen object based fetch gebruiken maar een array. Zo kan je de regel
  1. $this->output = $this->obj->$what;
verbeteren want dat gaat ook niet werken volgens mij.
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.191s