سلام دوست عزیز
لطفا از این به بعد هم عنوان درست بنویسید (بارها همین عنوان رو استفاده کردین!) و هم متن برای تاپیکتون
استاد من عذر میخوام به معنای واقعی کلمه تنها عنوانی بود که برای این ارور به ذهنم رسید?. دیگه تکرار نمیشه??.
اما درمورد کد نفهمیدم منظورتون رو، باید بنویسم exec یا execute.
الیته درهر صورت باز هم ارور میده.
کدتون رو قرار بدین
بفرمایید.
class BaseModel{ protected $db ; protected $table = 'users' ; protected $primaryKey = 'id'; public function __construct() { try { $this->db = new PDO("mysql:dbName=abitodo;host=localhost",'root','') ; echo "OK" ; } catch (PDOException $error) { die ("connection is failed!" . $error->getMessage()); } } public function find($id){ $select = "SELECT * from {$this->table} where {$this->primaryKey} = :id" ; $stmt = $this->db->prepare($select) ; $stmt->execute([':id' => $id]) ; return $stmt->fetch(PDO::FETCH_OBJ) ; } public function update($id){ #code for update } } $user = new BaseModel() ; $userData = $user->find(2) ; var_dump($userData) ;
سلام کد زیر رو ابتدا باید assign بشه به یه متغیر و بعد اون متغیر return بشه به صورت زیر :
$stmt = $stmt->execute([':id' => $id]) ; return $stmt->fetch(PDO::FETCH_OBJ) ;
استاد اون کد رو هم تست کردم ولی باز هم نشد!!
سلام مجدد
کدتون مشکلی نداشت
فقط باید dbname رو همینجوری بنویسید
new PDO("mysql:dbname=abitodo;host=localhost",'root','') ;
موفق باشید ?