بروز خطا
[message]
اشتراک در سوال
رای ها
[dataList]
خطای get property of non-object
دروود
توی قسمت آخر از فصل دوم آموزشاتاستاد برای اتصال پی اچ پی به دیتابییس از یک سورس استفاده میکنن. من توی متود qurry به خطا خوردم که هر چقدر بررسی میکنم نمیتونم علت رو پیدا کنم (همه چیز رو کاملا درست پیاده کردم)
متود querry :
public function querry($sql){
$result = $this->connection->query($sql);
$result;
if($result->num_rows == 0){//error line
return null;
}
while($rows = $result->fetch_assoc()){//error line
$records[] = $rows;
}
return $records;
}
که به خطای زیر بر میخورم:
برای این سوال 2 پاسخ وجود دارد.
پاسخ به سوال
کاشی زاده
8 سال پیش
0
0
خطا به این خاطر هست که در یک خط بالاتر از خط ارور شما به جای اینکه بنویسید :
$records = array();
نوشتید :
$result;
پاسخ به سوال
bivatan
7 سال پیش
0
0
منم همین مشکل رو دارم . همه چیز درسته .اما خطای non-object میده !
<?
class Db {
private $connection;
public function __construct($option = null){
if ($option !=null){
$host = $option['host'];
$user = $option['user'];
$pass = $option['pass'];
$name = $option['name'];
} else {
global $config;
$host = $config['db']['host'];
$user = $config['db']['user'];
$pass = $config['db']['pass'];
$name = $config['db']['name'];
}
$this->connection = new mysqli($host, $user, $pass, $name);
if ($this->connection->connect_error) {
echo "Connection failed: " . $this->connection->connect_error;
exit;
}
$this->connection->query("SET NAMES 'utf8'");
}
public function first($sql){
$records = $this->query($sql);
if ($records == null){
return null;
}
return $records[0];
}
public function query($sql){
$result = $this->connection->query($sql);
$records = array();
if ($result->num_rows == 0) { // از این خط ایراد میگیره!
return null;
}
while($row = $result->fetch_assoc()) {
$records[] = $row;
}
return $records;
}
public function connection(){
return $this->connection;
}
public function close(){
$this->connection->close();
}
}
پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .