我很困惑,我在下面的php代碼中犯了錯誤。雖然,我看了無數次在我的代碼,但無法找到爲什麼我得到這個錯誤'無法訪問空的屬性'。'無法訪問空屬性'錯誤php
class DBTest{
//declare variables
private $servername = "localhost";
private $username = "root";
private $password = "";
private $database = "avn_test";
private static $conn;
private $results;
//constructor
public function __construct(){
self::$conn = new mysqli($servername, $username, $password, $database);
if ($conn->connect_error) {
printf("Connect failed: %s\n", mysqli_connect_error());
exit();}
} //close constructor
public function executeQuery($query='') {
if(!empty($query)){
$query = self::$conn->real_escape_string($query);
**下面行錯誤:**
$this->results = self::$conn->query($query) or die("Error in database connection".self::$conn->$error);
if($this->results->num_rows > 0) {
$rowqry = array();
while($row = $this->results->fetch_object()) {
$rowqry[]= $row; } //close of while
$rarray['returnvar'] = $rowqry;
return $rarray;
} else {
return false; } // close of else
}//close of top if
else
return false;
} //close of function
function __destruct(){
self::$conn->close();}
} //close of class
//create an object of class DBTest
$test = new DBTest();
$q= "select * from test";
$tmp = $test->executeQuery($q);
if($tmp){
foreach($tmp as $key => $value){
echo $value;}
}
else
echo 'tmp var is empty';
請指出你的錯誤行,用一些箭頭或類似 – 2015-03-31 09:26:48
請顯示錯誤和黑暗或在該行將發生的評論 – 2015-03-31 09:28:02
他不需要這條線,因爲連接將被自動關閉。另外'real_escape_string($ query)'?不僅此功能已被棄用,而且完全是使用它的錯誤方式。 – 2015-03-31 09:34:10