Marwan Elatta نشر 18 مارس أرسل تقرير نشر 18 مارس (معدل) السلام عليكم. بعد تصحيح الأخطاء ومراجعة التحذيرات تظهر الرسالة التالية . مرفق صور الجداول المذكورة SELECT * FROM _user_groups WHERE `ID` = ? ORDER BY ID ASC LIMIT 0, 1 SELECT * FROM _setting_admin WHERE `var` = ? LIMIT 0, 1 تم التعديل في 18 مارس بواسطة Marwan Elatta 3 اقتباس
0 محمد عاطف17 نشر 18 مارس أرسل تقرير نشر 18 مارس وعليكم السلام ورحمة الله وبركاته. ما هي الرسائل التي تظهر لك ؟ حيث الذي قمت بتوضيحه هو الإستعلامات query لديك . إذا لم ترد أن تظهر يجب عليك حذف السطر الذي تقوم فيه بطباعتها وسيكون السطر شئ كهذا : echo $query; أما إذا كان يظهر لك رسالة خطأ أو تحذير يرجى إرفاقها. اقتباس
0 Mustafa Suleiman نشر 18 مارس أرسل تقرير نشر 18 مارس لا يوجد خطأ ظاهر لديك، ما رسالة الخطأ التي تظهر لك؟ اقتباس
0 Marwan Elatta نشر 18 مارس الكاتب أرسل تقرير نشر 18 مارس ليس هنالك خطأ. لكن الموقع لا يفتح وتظهر هذه الرسالة. الموضع الذي وجدت به ;echo $query في ملف class-db.php هو التالي، وعندما اقوم بحذفه يحذف الاستعلام ولكن تبقى الصفحة فارغة ولا تنتقل الى صفحة الموقع: public function prepare( $query, $generic = false ){ echo $query; $run = parent::prepare( $query ); $this->__log(array( "query" => $query, "__cf" => "prepare", "safe" => 1, "generic" => $generic ? 1 : 0, )); return $run; } 2 اقتباس
0 محمد عاطف17 نشر 18 مارس أرسل تقرير نشر 18 مارس بتاريخ 2 دقائق مضت قال Marwan Elatta: ليس هنالك خطأ. لكن الموقع لا يفتح وتظهر هذه الرسالة. الموضع الذي وجدت به ;echo $query في ملف class-db.php هو التالي، وعندما اقوم بحذفه يحذف الاستعلام ولكن تبقى الصفحة فارغة ولا تنتقل الى صفحة الموقع: public function prepare( $query, $generic = false ){ echo $query; $run = parent::prepare( $query ); $this->__log(array( "query" => $query, "__cf" => "prepare", "safe" => 1, "generic" => $generic ? 1 : 0, )); return $run; } إذا ليس هناك مشكلة أو خطأ . يبدوا أنه يوجد لديك في الكود مكان تقوم فيه بإستخدام exit أو die لهذا لا يتم إكمال تنفيذ الإسكريبت ولا يتم إظهار أى شئ . لهذا إذا قمت في أى مكان بكتابة exit أو die فيبدوا أنك لم تقم بحذفه لذلك يجب البحث عن أى منهما وحذف ذلك لأنه حاليا لا يوجد أى مشكلة. اقتباس
0 Mustafa Suleiman نشر 18 مارس أرسل تقرير نشر 18 مارس بتاريخ 8 دقائق مضت قال Marwan Elatta: ليس هنالك خطأ. لكن الموقع لا يفتح وتظهر هذه الرسالة. الموضع الذي وجدت به ;echo $query في ملف class-db.php هو التالي، وعندما اقوم بحذفه يحذف الاستعلام ولكن تبقى الصفحة فارغة ولا تنتقل الى صفحة الموقع: public function prepare( $query, $generic = false ){ echo $query; $run = parent::prepare( $query ); $this->__log(array( "query" => $query, "__cf" => "prepare", "safe" => 1, "generic" => $generic ? 1 : 0, )); return $run; } الخطأ غير واضح، تفقد سجلات الخادم الـ Error Log هل يوجد بها خطأ ظاهر؟ أيضًا ما الغرض من السكريبت؟ هل من المفترض أن يعرض بيانات معينة في الواجهة؟ أم عليك أنت كتابة ذلك؟ حاول استخدام الكود التالي وتفقد هل يتم طباعة نتيجة أم لا، وإن تم ذلك فالسكريبت يعمل بشكل سليم: $stmt = $this->prepare("SELECT * FROM _user_groups WHERE ID = ?", true); $stmt->execute([1]); while ($row = $stmt->fetch()) { echo "Host: " . htmlspecialchars($row['db_host']) . "<br>"; echo "User: " . htmlspecialchars($row['db_user']) . "<br>"; echo "Password: " . htmlspecialchars($row['db_pass']) . "<br>"; } اقتباس
0 Marwan Elatta نشر 18 مارس الكاتب أرسل تقرير نشر 18 مارس بتاريخ 46 دقائق مضت قال محمد عاطف17: إذا ليس هناك مشكلة أو خطأ . يبدوا أنه يوجد لديك في الكود مكان تقوم فيه بإستخدام exit أو die لهذا لا يتم إكمال تنفيذ الإسكريبت ولا يتم إظهار أى شئ . لهذا إذا قمت في أى مكان بكتابة exit أو die فيبدوا أنك لم تقم بحذفه لذلك يجب البحث عن أى منهما وحذف ذلك لأنه حاليا لا يوجد أى مشكلة. هل يمكن ان تكون هنا المشكلة <?php if ( !defined( "root" ) ) die; class db extends mysqli { protected $cache = array(); public $debug = false; public $log = false; public function __construct( $loader ){ $this->loader = $loader; // Try to connect to DB parent::__construct( db_host, db_user, db_pass, db_name ); if( mysqli_connect_errno() ) { echo "Failed to connect to Database <br>\n"; echo "You have to run the installer or edit app/config.php and put in the right database information"; throw new exception(mysqli_connect_error(), mysqli_connect_errno()); exit; die; } parent::set_charset("utf8mb4"); } اقتباس
0 محمد عاطف17 نشر 18 مارس أرسل تقرير نشر 18 مارس بتاريخ 2 دقائق مضت قال Marwan Elatta: هل يمكن ان تكون هنا المشكلة نعم من الممكن أن تكون هنا المشكلة . فإذا لم يتم تعريف ثابت بإسم root سيتم إنهاء تنفيذ الإسكريبت ولن يتم إستكماله . بتاريخ 3 دقائق مضت قال Marwan Elatta: if ( !defined( "root" ) ) die; لذلك يمكنك طباعة root قبل هذا السطر والتأكد من وجوده . أو التأكد من أى مكان أخر يتم إستخدام die به . اقتباس
0 Marwan Elatta نشر 18 مارس الكاتب أرسل تقرير نشر 18 مارس بتاريخ منذ ساعة مضت قال Mustafa Suleiman: الخطأ غير واضح، تفقد سجلات الخادم الـ Error Log هل يوجد بها خطأ ظاهر؟ أيضًا ما الغرض من السكريبت؟ هل من المفترض أن يعرض بيانات معينة في الواجهة؟ أم عليك أنت كتابة ذلك؟ حاول استخدام الكود التالي وتفقد هل يتم طباعة نتيجة أم لا، وإن تم ذلك فالسكريبت يعمل بشكل سليم: $stmt = $this->prepare("SELECT * FROM _user_groups WHERE ID = ?", true); $stmt->execute([1]); while ($row = $stmt->fetch()) { echo "Host: " . htmlspecialchars($row['db_host']) . "<br>"; echo "User: " . htmlspecialchars($row['db_user']) . "<br>"; echo "Password: " . htmlspecialchars($row['db_pass']) . "<br>"; } الاسكربت لموقع موسيقي لرفع ومشاركة ملفات صوتية. عند استخدام الكود الذي ذكرته فالنتيجة هي: Fatal error: Uncaught Error: Call to undefined method loader::prepare() in /home/vol17_1/infinityfree.com/if0_38415802/htdocs/app/core/class_db.php:2 Stack trace: #0 /home/vol17_1/infinityfree.com/if0_38415802/htdocs/app/core/class_loader.php(60): require_once() #1 /home/vol17_1/infinityfree.com/if0_38415802/htdocs/app/loader.php(22): loader->_require_core_files('db') #2 /home/vol17_1/infinityfree.com/if0_38415802/htdocs/index.php(6): require_once('/home/vol17_1/i...') #3 {main} thrown in /home/vol17_1/infinityfree.com/if0_38415802/htdocs/app/core/class_db.php on line 2 اقتباس
السؤال
Marwan Elatta
السلام عليكم.
بعد تصحيح الأخطاء ومراجعة التحذيرات تظهر الرسالة التالية . مرفق صور الجداول المذكورة
SELECT * FROM _user_groups WHERE `ID` = ? ORDER BY ID ASC LIMIT 0, 1 SELECT * FROM _setting_admin WHERE `var` = ? LIMIT 0, 1
8 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.