Amir Alsaeed نشر 3 يونيو 2021 أرسل تقرير مشاركة نشر 3 يونيو 2021 لدي الكود البرمجي التالي الذي يقوم بالجمع بين جدولين ويختبر شرط معيّن: $res = DB::table('book_author') ->join('books', 'books.id', '=', 'book_author.book_id') ->where('book_author.author_id', '=', $author_id) ->where('book_author.book_id', '=', $book_id); if($res){ return true; } else{ return false; } ولكن المشكلة أن الناتج يكون دوماً true ولا يصل أبداً إلى false. ماهو الخطأ؟ اقتباس رابط هذا التعليق شارك على الشبكات الإجتماعية More sharing options...
0 سمير عبود نشر 3 يونيو 2021 أرسل تقرير مشاركة نشر 3 يونيو 2021 السبب في المُشكلة أنك لا تقوم بإرجاع النتائج من الإستعلام فحالياً المُتغير res يحمل نُسخة من باني الإستعلامات فقط ( Query Builder ) و لا يحتوي على نتيجة ذلك الإستعلام لجلب النتائج إستخدم التابع get بالشكل التالي: $res = DB::table('book_author') ->join('books', 'books.id', '=', 'book_author.book_id') ->where('book_author.author_id', '=', $author_id) ->where('book_author.book_id', '=', $book_id) ->get(); حيث أن التابع get سيقوم بإرجاع collection ثم بإمكانك التحقق من وجود نتائج بالشكل التالي: if($res->isNotEmpty()){ return true; } else{ return false; } 1 اقتباس رابط هذا التعليق شارك على الشبكات الإجتماعية More sharing options...
السؤال
Amir Alsaeed
لدي الكود البرمجي التالي الذي يقوم بالجمع بين جدولين ويختبر شرط معيّن:
$res = DB::table('book_author') ->join('books', 'books.id', '=', 'book_author.book_id') ->where('book_author.author_id', '=', $author_id) ->where('book_author.book_id', '=', $book_id); if($res){ return true; } else{ return false; }
ولكن المشكلة أن الناتج يكون دوماً true ولا يصل أبداً إلى false. ماهو الخطأ؟
رابط هذا التعليق
شارك على الشبكات الإجتماعية
1 جواب على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.