Marwan Elatta نشر منذ 15 ساعة أرسل تقرير نشر منذ 15 ساعة السلام عليكم كيف استطيع معرفة الـ ID المقصود Fatal error: Uncaught mysqli_sql_exception: Unknown column 'ID' in 'where clause' in /home/vol17_1/infinityfree.com/if0_38415802/htdocs/app/core/class_db.php:95 Stack trace: #0 /home/vol17_1/infinityfree.com/if0_38415802/htdocs/app/core/class_db.php(95): mysqli->prepare('SELECT * FROM _...') #1 /home/vol17_1/infinityfree.com/if0_38415802/htdocs/app/core/class_db.php(222): db->prepare('SELECT * FROM _...', true) #2 /home/vol17_1/infinityfree.com/if0_38415802/htdocs/app/core/class_db.php(126): db->_query(Array) #3 /home/vol17_1/infinityfree.com/if0_38415802/htdocs/app/core/class_user.php(693): db->_select(Array) #4 /home/vol17_1/infinityfree.com/if0_38415802/htdocs/app/core/class_user.php(716): user->group_select(Array) #5 /home/vol17_1/infinityfree.com/if0_38415802/htdocs/app/core/class_user.php(1090): user->get_group_data(5) #6 /home/vol17_1/infinityfree.com/if0_38415802/htdocs/app/core/class_user.php(635): user->get_access(false) #7 /home/vol17_1/infinityfree.com/if0_38415802/htdocs/app/core/class_user.php(443): user->get_data(Array) #8 /home/vol17_1/infinityfree.com/if0_38415802/htdocs/app/core/class_visitor.php(30): user->data(Array) #9 /home/vol17_1/infinityfree.com/if0_38415802/htdocs/app/core/class_visitor.php(38): visitor->user() #10 /home/vol17_1/infinityfree.com/if0_38415802/htdocs/app/core/class_loader.php(143): visitor->set_access() #11 /home/vol17_1/infinityfree.com/if0_38415802/htdocs/app/loader.php(24): loader->_check_user_request() #12 /home/vol17_1/infinityfree.com/if0_38415802/htdocs/index.php(6): require_once('/home/vol17_1/i...') #13 {main} thrown in /home/vol17_1/infinityfree.com/if0_38415802/htdocs/app/core/class_db.php on line 95 2 اقتباس
0 محمد عاطف17 نشر منذ 14 ساعة أرسل تقرير نشر منذ 14 ساعة لاحظ الخطأ يخبرك أنه موجود في ملف app/core/class_db.php في سطر رقم 95 . حيث أنك هنا تستخدم في الإستعلام العمود ID في جملة الإستعلام where حيث يبدوا انك تقوم بالبحث من خلال العمود ID . ويبدوا أنك لا تقوم بوضع العمود ID في جملة select لهذا لا يتعرف على العمود ID في إستعلام where . لذلك تأكد من إختيار العمود ID في جملة select والتأكد من إسم العمود الصحيح. يمكنك إرفاق الإستعلام كاملا الموجود في سطر 95 لمساعدتك بشكل أفضل. اقتباس
0 Marwan Elatta نشر منذ 14 ساعة الكاتب أرسل تقرير نشر منذ 14 ساعة السطر 95 يحتوي على: ;$run = parent::prepare( $query)$ المشكلة أنني لم أستطع معرفةالعمود المقصود في قاعدة البيانات 1 اقتباس
0 Mustafa Suleiman نشر منذ 14 ساعة أرسل تقرير نشر منذ 14 ساعة بتاريخ 12 دقائق مضت قال Marwan Elatta: السطر 95 يحتوي على: ;$run = parent::prepare( $query)$ المشكلة أنني لم أستطع معرفةالعمود المقصود في قاعدة البيانات المشكلة تبدأ من ملفات class_user.php وclass_db.php تفقدها، فالكود يحاول جلب بيانات مستخدم أو مجموعة من خلال ID غير موجود. قبل سطر 95 أضف التالي لطباعة الاستعلام ومعرفة محتواه وإيقاف الكود قبل الوصول للسطر 95: echo $query; exit; $run = parent::prepare($query); تصفح الصفحة مرة أخرى وسيظهر لك الاستعلام الكامل مشابه لللتالي SELECT * FROM users WHERE ID = 5، ولاحظ اسم الجدول واسم العمود المستخدم. ثم اتصل بقاعدة البيانات عبر phpMyAdmin أو أي أداة إدارة قواعد بيانات متوفرة، وابحث عن الجدول المذكور في الاستعلام، وفي حال الاستعلام به ID ولكن العمود في الجدول يُسمى id فانتبه إلى حساسية الأحرف مهمة أو user_id أو أي اسم آخر، وسيكون ذلك مصدر المشكلة. اقتباس
0 Marwan Elatta نشر منذ 13 ساعة الكاتب أرسل تقرير نشر منذ 13 ساعة بتاريخ 9 دقائق مضت قال Mustafa Suleiman: المشكلة تبدأ من ملفات class_user.php وclass_db.php تفقدها، فالكود يحاول جلب بيانات مستخدم أو مجموعة من خلال ID غير موجود. قبل سطر 95 أضف التالي لطباعة الاستعلام ومعرفة محتواه وإيقاف الكود قبل الوصول للسطر 95: echo $query; exit; $run = parent::prepare($query); تصفح الصفحة مرة أخرى وسيظهر لك الاستعلام الكامل مشابه لللتالي SELECT * FROM users WHERE ID = 5، ولاحظ اسم الجدول واسم العمود المستخدم. ثم اتصل بقاعدة البيانات عبر phpMyAdmin أو أي أداة إدارة قواعد بيانات متوفرة، وابحث عن الجدول المذكور في الاستعلام، وفي حال الاستعلام به ID ولكن العمود في الجدول يُسمى id فانتبه إلى حساسية الأحرف مهمة أو user_id أو أي اسم آخر، وسيكون ذلك مصدر المشكلة. الاستعلام: SELECT * FROM _user_groups WHERE `ID` = ? ORDER BY ID ASC LIMIT 0, 1 الجدول لايحتوي على عمود ID اقتباس
0 Mustafa Suleiman نشر منذ 1 ساعة أرسل تقرير نشر منذ 1 ساعة بتاريخ 12 ساعة قال Marwan Elatta: الاستعلام: SELECT * FROM _user_groups WHERE `ID` = ? ORDER BY ID ASC LIMIT 0, 1 الجدول لايحتوي على عمود ID علية إذن إلى معرفة الأعمدة الموجودة فعليًا في الجدول _user_groups من خلال phpMyAdmin تستطيع تفقد الأمر يدويًا أو من خلال الاستعلام: SHOW COLUMNS FROM _user_groups; عامًة الاستعلام يحاول استخدام ID كمعرّف أساسي Primary Key لتحديد سجل معين وترتيب النتائج، فمن المرجح أن العمود الحقيقي ربما يكون بالاسم: id group_id user_group_id بمجرد تحديد العمود الصحيح لنفترض أنه group_id، تحتاج إلى تعديل الاستعلام في الكود أو تعديل قاعدة البيانات، عامًة افتح الملف الذي يولّد الاستعلام ربما يكون في class_db.php أو class_user.php، وابحث عن السطر الذي يحتوي على: $query = "SELECT * FROM _user_groups WHERE `ID` = ? ORDER BY ID ASC LIMIT 0, 1"; واستبدل ID باسم العمود الصحيح. او عليك تعديل القيمة التي يتم تمريرها للاستعلام في حال كان لا يتم كتابة الاستعلام مباشرًة. اقتباس
0 Marwan Elatta نشر منذ 25 دقيقة الكاتب أرسل تقرير نشر منذ 25 دقيقة بتاريخ 59 دقائق مضت قال Mustafa Suleiman: علية إذن إلى معرفة الأعمدة الموجودة فعليًا في الجدول _user_groups من خلال phpMyAdmin تستطيع تفقد الأمر يدويًا أو من خلال الاستعلام: SHOW COLUMNS FROM _user_groups; عامًة الاستعلام يحاول استخدام ID كمعرّف أساسي Primary Key لتحديد سجل معين وترتيب النتائج، فمن المرجح أن العمود الحقيقي ربما يكون بالاسم: id group_id user_group_id بمجرد تحديد العمود الصحيح لنفترض أنه group_id، تحتاج إلى تعديل الاستعلام في الكود أو تعديل قاعدة البيانات، عامًة افتح الملف الذي يولّد الاستعلام ربما يكون في class_db.php أو class_user.php، وابحث عن السطر الذي يحتوي على: $query = "SELECT * FROM _user_groups WHERE `ID` = ? ORDER BY ID ASC LIMIT 0, 1"; واستبدل ID باسم العمود الصحيح. او عليك تعديل القيمة التي يتم تمريرها للاستعلام في حال كان لا يتم كتابة الاستعلام مباشرًة. هنا الجدول المقصود 1 اقتباس
0 محمد عاطف17 نشر منذ 9 دقيقة أرسل تقرير نشر منذ 9 دقيقة بتاريخ 12 دقائق مضت قال Marwan Elatta: هنا الجدول المقصود لاحظ أن الجدول لا يحوي على أى حقل يسمى ID . هل قمت بتعديل الجدول أو قمت بحذف هذا العمود ؟ يرجى التأكد من تطبيق أخر تعديلات على قاعدة البيانات لديك إذا لم تكن قد طبقت أخر التعديلات. او يمكنك إضافة هذا العمود من خلال الإستعلام التالي ولكن يجب التأكد من أن هذا العمود يجب أن يكون في ذلك الجدول وأن الإستعلام صحيح وليس خاطئ لديك حيث هذا الجدول يحتوي على بيانات قاعدة البيانات وأعتقد انه لا يجب أن يوجد به حقل id . ALTER TABLE _user_groups ADD COLUMN ID INT AUTO_INCREMENT PRIMARY KEY; اقتباس
السؤال
Marwan Elatta
السلام عليكم
كيف استطيع معرفة الـ ID المقصود
Fatal error: Uncaught mysqli_sql_exception: Unknown column 'ID' in 'where clause' in /home/vol17_1/infinityfree.com/if0_38415802/htdocs/app/core/class_db.php:95 Stack trace: #0 /home/vol17_1/infinityfree.com/if0_38415802/htdocs/app/core/class_db.php(95): mysqli->prepare('SELECT * FROM _...') #1 /home/vol17_1/infinityfree.com/if0_38415802/htdocs/app/core/class_db.php(222): db->prepare('SELECT * FROM _...', true) #2 /home/vol17_1/infinityfree.com/if0_38415802/htdocs/app/core/class_db.php(126): db->_query(Array) #3 /home/vol17_1/infinityfree.com/if0_38415802/htdocs/app/core/class_user.php(693): db->_select(Array) #4 /home/vol17_1/infinityfree.com/if0_38415802/htdocs/app/core/class_user.php(716): user->group_select(Array) #5 /home/vol17_1/infinityfree.com/if0_38415802/htdocs/app/core/class_user.php(1090): user->get_group_data(5) #6 /home/vol17_1/infinityfree.com/if0_38415802/htdocs/app/core/class_user.php(635): user->get_access(false) #7 /home/vol17_1/infinityfree.com/if0_38415802/htdocs/app/core/class_user.php(443): user->get_data(Array) #8 /home/vol17_1/infinityfree.com/if0_38415802/htdocs/app/core/class_visitor.php(30): user->data(Array) #9 /home/vol17_1/infinityfree.com/if0_38415802/htdocs/app/core/class_visitor.php(38): visitor->user() #10 /home/vol17_1/infinityfree.com/if0_38415802/htdocs/app/core/class_loader.php(143): visitor->set_access() #11 /home/vol17_1/infinityfree.com/if0_38415802/htdocs/app/loader.php(24): loader->_check_user_request() #12 /home/vol17_1/infinityfree.com/if0_38415802/htdocs/index.php(6): require_once('/home/vol17_1/i...') #13 {main} thrown in /home/vol17_1/infinityfree.com/if0_38415802/htdocs/app/core/class_db.php on line 95
7 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.