2016-05-14 25 views
0

Ich entwerfe eine Webseite in PHP 5.6.16, versuchen, einige OOP-Ideen zu verwenden. Wenn ich Datei classnews.php in der Datei index.php enthalten, erhalte ich die FehlerOOP PHP-Fehler in der Datenbank mysqli_query

Undefined variable: connect in classtin.php 

classdb.php:

<?php 
class db 
{ 
    public $hostname = "localhost"; 
    public $user= "root"; 
    public $pass = ""; 
    public $db = "test"; 
    /* public $connect = NULL; 
    public $result = NULL;*/ 

    function __construct() 
    { 
     $connect = mysqli_connect($this->hostname, $this->user, $this->pass,$this->db); 
     mysqli_set_charset($connect,'utf8'); 
    } 
} 
?> 

classnews.php:

<?php 
    include_once('classdb.php'); 

    class tin extends db 
    { 
     public function tinmoi() 
     { 
      $sql= "select * from emp "; 
      $result= mysqli_query($connect,$sql); 
      return $result; 
     } 
    } 
?> 
+0

Sie fehlen wahrscheinlich '$ dieses'. Bitte bereit mehr über OOP hier: http://php.net/manual/en/language.oop5.basic.php –

+0

Danke für mich! Kannst du klar sprechen? Ich bin Neuling. –

+0

Problembeschreibung behoben, um lesbar zu sein. Verbesserte Codeformatierung Bloat wurde entfernt. – Prune

Antwort

0

Sie müssen beziehen sich auf Teilnehmer durch $this. So wie Sie es zum Beispiel mit $this->hostname gemacht haben.

ändern Teile des Codes Sie haben:

class db 
{ 
    public $hostname = "localhost"; 
    public $user= "root"; 
    public $pass = ""; 
    public $db = "test"; 

    public $connection; 

    public function __construct() 
    { 
     $this->connection = mysqli_connect($this->hostname, $this->user, $this->pass,$this->db); 
     mysqli_set_charset($this->connection,'utf8'); 
    } 
} 

class tin extends db 
{ 
    public function tinmoi() 
    { 
     $sql = "select * from emp "; 
     return mysqli_query($this->connection, $sql); 
    } 
} 

Noch einmal, ich stark durch Grundlagen der OOP in PHP gehen würde vorschlagen: http://php.net/manual/en/language.oop5.basic.php

+0

vielen dank! ich liebe dich.. –