بروز خطا
[message]
اشتراک در سوال
رای ها
[dataList]
اشکال در modify
0
0
سلام . وقتی میخوام از Modify در کلاس db استفاده کنم پیغام Notice: Trying to get property of non-object in C:\wamp\www\db.php on line 50 به من نشون داده میشه . چطور رفعش کنم ؟ (9 سال پیش)
0
0
سلام. کدهای مربوط به کلاس db به همراه شماره خطوط را قرار بدید. (9 سال پیش)
برای این سوال 5 پاسخ وجود دارد.
پاسخ به سوال
مصطفی
9 سال پیش
0
0
پاسخ به سوال
مصطفی
9 سال پیش
0
0
<?php
class Db
{
private $connection;
private static $db;
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 static function getInstance($option=null){
if (self::$db==null){
self::$db = new Db($option);
}
return self::$db;
}
public function first($sql){
$records = $this->query($sql);
if ($records==null){
return null;
}
return $records[0];
}
public function modify($sql){
$records = $this->query($sql);
return $records;
}
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;
}
}
/**
* Created by PhpStorm.
* User: PC002
* Date: 4/28/2017
* Time: 1:22 PM
*/
پاسخ به سوال
مصطفی
9 سال پیش
0
0
$db->modify("UPDATE tblmenusub SET status='1' WHERE id =" . $ROWSdb [$j]['id']);
این هم کدی که باهاش میخوام دیتابیس رو آپدیت کنم
که داخل یک حلقه قرار داره
و مقدار درستی بهم میده
اما وقتی به دیتابیس وصل میشه عمل آپدیت انجام میده اما بعدش صفحه ای که پست کردم رو نشون میده
پاسخ به سوال
Mehrad
9 سال پیش
0
0
اگر عمل آپدیت انجام میشه ، پس قاعدتا مشکل از این کوئری ای که قرار دادید نباید باشه.
اما با این حال نوشتن کوئری به این شکل درست نیست و باید مقدار
$ROWSdb [$j]['id']
رو در یک متغیر قبل از کوئری بریزید و سپس متغیر رو به همراه تَک کوتیشن در کوئری قرار بدید.
$value = $ROWSdb [$j]['id'];
$db->modify("UPDATE tblmenusub SET status='1' WHERE id ='$value' ");
پاسخ به سوال
مصطفی
9 سال پیش
0
0
سلام ، وقتی عمل آپدیت فقط برای یک آیتم صورت میگیره خطایی داده نمیشه . اما وقتی برای دوتا و بیشتر عمل آپدیت رو انجام میدم خطا میده
پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .

