2016-07-21 11 views
0

今日PHPスクリプトをコードし、致命的なエラーメッセージが表示されました。致命的なエラー:oop.phpでヌルのメンバ関数query()を呼び出す

致命的なエラーは:行にoop.phpでヌルのメンバ関数のクエリ()の呼び出し23

<?php 

class DatabaseConnection { 

    public $dbconnection; 
    public $dbhost; 
    public $dbuser; 
    public $dbpass; 
    public $dbname; 

// Create connection 
    public function __construct($dbhost, $dbuser, $dbpass, $dbname) { 
    $this->dbconnection = new mysqli($this->dbhost = $dbhost, $this->dbuser = $dbuser, $this->dbpass = $dbpass, $this->dbname = $dbname); 
    } 

} 

class sql extends DatabaseConnection { 

    public $sql; 

    public function __construct($sql) { 
     if ($this->dbconnection->query($this->sql=$sql) === TRUE) { 
     echo "New record created successfully"; 
     } else { 
     echo "Error: " . $this->sql . "<br>" . $this->dbconnection->error; 
     } 
    } 

} 

エンドは先祖

<?php 
require 'oop.php'; 
$mydb = new DatabaseConnection("localhost", "admin", "admin", "tutorial"); 

if(isset($_POST['submit'])) { 

$firstname = $_POST['firstname']; 
$username = $_POST['username']; 
$password = $_POST['password']; 

$insertdata = new sql("INSERT INTO tutorial (firstname, username, password) 
VALUES ('$firstname', '$username', '$password')"); 
?> 

<p>Firstname: <?php echo $firstname; ?></p> 
<p>Username: <?php echo $username; ?></p> 
<p>Password: <?php echo $password; ?></p> 

<?php } ?> 



<form method="post"> 
<input type="text" name="firstname" placeholder="Firstname"/></br> 
<div style="height:10px;"></div> 
<input type="text" name="username" placeholder="Username"/></br> 
<div style="height:10px;"></div> 
<input type="password" name="password" placeholder="Password"/></br> 
<div style="height:10px;"></div> 
<input type="submit" name="submit" value="Enter"/> 

</form> 

答えて

0

PHPを呼び出すことはありませんindex.phpをありコンストラクタをデフォルトで使用しているため、sqlオブジェクトをインスタンス化すると、が呼び出されなかったので、$this->dbconnectionは存在しません。

あなたのコードがあるべき

class sql extends databasdeconnection { 
    function __construct() { 
     parent::__construct(); // create dbconnection 
     ... use $this->dbconnection 
    } 
} 
関連する問題