مدرس دوره علی شیخ
مدت دوره 16:56:31
تعداد ویدیو 111

وضعیت دوره : کامل شده
قیمت دوره : 599,000 539,000 تومان

نظرات ارزشمند شما:

برای ارسال نظر ابتدا باید وارد سایت شوید

  • سلام و وقت بخیر من داخل دیتابیس یک رکورد فقط تعریف کردم و از متد fetch استفاده کردم چون فقط یک رکورد داشتم ولی با این حال بهم ارور

     Attempt to read property "name" on string
    داد ولی وقتی fetchAll زدم درست شد حالا چرا با fetch ارور میداد؟؟

    • سلام وقت بخیر.
      ببینید توی دستور sql باید شرط به شکلی باشه که یک رکورد قرار برگرده مثلا فلان id یا فلان فیلد یونیک مقدارش برابر بود با فلان را پیدا کن که خروجی حالا هر تعداد رکورد هم داخل دیتابیس باشه فقط یکی را برمیگردونه و دیگه در قالب یک آرایه برگشته داده نمیشه اطلاعات چون توی شرط فقط یک رکورد باید برگشت داده بشه

    • سلام وقت بخیر.
      زمانیکه از fetchAll استفاده میشه مقدار برگشتی را میتوان توی foreach و یا for استفاده کرد. توی دوره رایگان php که پیش نیاز این دوره هست هم اشاره شده

    • اخه چون توی دوره php نمیشد زمانیک از foreach استفاده میشه دیگه نمیشد از fetch یا fetchAll استفاده کنیم

    • بصورت کلی بعد از درخواست به دیتابیس و زدن متد fetchAll دیتای بازگشتی همانند آرایه هست و حالا توی foreach و یا for قابل استفاده هست از طرفی داخل خوده حلقه هم میتونید درخواست به دیتابیس بزنید اطلاعات دریافت کنید و توی یک حلقه دیگه استفاده کنید

  • سلام ؛به نظرتون چرا این ایرور رو میگیرم؟
    '''
    Fatal error: Uncaught Error: Call to a member function prepare() on null in C:\xampp\htdocs\mvc\app\libraries\Database.php:37 Stack trace: #0 C:\xampp\htdocs\mvc\app\models\Article.php(12): Database->query('SELECT * FROM a...') #1 C:\xampp\htdocs\mvc\app\controllers\Pages.php(10): Article->getArticle() #2 C:\xampp\htdocs\mvc\app\libraries\Core.php(31): Pages->index() #3 C:\xampp\htdocs\mvc\public\index.php(4): Core->__construct() #4 {main} thrown in C:\xampp\htdocs\mvc\app\libraries\Database.php on line 37
    '''

    • سلام وقت بخیر.
      متن ارور نوشته که شما تابع prepare را روی null دارید صدا میزنید پس باید یکی یکی متغیرها را لاگ بگیرید ببینید مقادیر به چه شکل هستند.

  • باسلام دوستان
    اگر با ارور زیر مواجه شدید :

    Deprecated: Creation of dynamic property Pages::$articleModel is deprecated in /opt/lampp/htdocs/PHP-OOP-MVC/app/controllers/Pages.php on line 9

    استاد زمانی که از قابلیت dynamic property استفاده کردن یعنی بدون ایجاد property به نام private $articleModel; مستقیما کد زیر رو در construct اجرا کردن :

    
    
    $this->articleModel = $this->model('Article');


    اون موقع این قابلیت رو میشد در php انجام داد ولی اگر الآن برای شما این ارور رخ میده به این دلیل است که ورژن php بالاتری دارید و دیگه این قابلیت ساپورت نمیشه.

    اول class Pages این رو اضافه کنید درست میشه :
    
    
    private $articleModel;