عمر عبدالوهاب نشر 20 أغسطس 2023 أرسل تقرير نشر 20 أغسطس 2023 Fatal error: Uncaught mysqli_sql_exception: Unknown database 'stdz' in C:\xampp\htdocs\phpsql\db-connect.php:16 Stack trace: #0 C:\xampp\htdocs\phpsql\db-connect.php(16): mysqli_connect('localhost:4306', 'root', Object(SensitiveParameterValue), 'stdz') #1 {main} thrown in C:\xampp\htdocs\phpsql\db-connect.php on line 16 1 اقتباس
0 Mustafa Suleiman نشر 20 أغسطس 2023 أرسل تقرير نشر 20 أغسطس 2023 رسالة الخطأ تخبرك أنه لم يتم التعرف على قاعدة البيانات Unknown database 'stdz'، قم بالتأكد من قاعدة البيانات موجودة بالفعل وإن لم تجدها عليك إنشائها، وأظن أنها كانت لديك باسم std وليس stdz. وأتفهم ما تريد الوصول إليه، لكن لن يتم عرض الرسالة not connected والصحيح هو استخدام الكود التالي لعرض رسالة Database 'hsubgram' does not exist في حالة لم يتم إيجاد قاعدة بيانات بذلك الاسم : <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title> </head> <body> <?php if(isset($_POST["con"])){ $servername = 'localhost:3306'; // Hostname only $username = 'root'; $password = ''; $database = 'hsubgram'; // Connect to the server $conn = mysqli_connect($servername, $username, $password); if (!$conn){ die("Connection failed: " . mysqli_connect_error()); } // Check if the selected database exists $db_check_query = "SELECT SCHEMA_NAME FROM INFORMATION_SCHEMA.SCHEMATA WHERE SCHEMA_NAME = '$database'"; $db_check_result = mysqli_query($conn, $db_check_query); if (!$db_check_result) { die("Database check failed: " . mysqli_error($conn)); } if (mysqli_num_rows($db_check_result) == 0) { die("Database '$database' does not exist."); } mysqli_close($conn); echo "Connected to database: $database"; } ?> <form method="POST"> <center> <input type="submit" value="connect" name="con"> </center> </form> </body> </html> 1 اقتباس
0 Thaer Alhabbash نشر 20 أغسطس 2023 أرسل تقرير نشر 20 أغسطس 2023 قاعدة بيانات غير معروفة 'stdz': هذه هي المشكلة الرئيسية. يحاول البرنامج الاتصال بقاعدة بيانات MySQL تسمى "stdz" ، ولكن لم يتم التعرف على قاعدة البيانات أو أنها غير موجودة على خادم MySQL. 😄 \ xampp \ htdocs \ phpsql \ db-connect.php: 16: يخبرك هذا السطر بمكان حدوث الخطأ. في هذه الحالة ، حدث الخطأ في الملف db-connect.php في السطر 16. اقتباس
0 سمير عبود نشر 20 أغسطس 2023 أرسل تقرير نشر 20 أغسطس 2023 بشكل إفتراضي وضع الأخطاء في دوال mysqli مُعرف على النحو التالي: mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT); MYSQLI_REPORT_ERROR: يرمي رسالة تحذير كلما حدث خطأ. PHP لا يوقف تنفيذ التعليمات البرمجية ، فقط يرسل الرسالة. MYSQLI_REPORT_STRICT: يحول رسائل التحذير هذه إلى mysqli_sql_exception. توقف PHP تمامًا عن تنفيذ التعليمات البرمجية. يُمكنك إستخدام try ... catch لإلتقاط الإستثناء و عمل شيء ما يناسب ما تريد: try { $con = mysqli_connect("localhost","user","password","my_db"); } catch(Exception $e) { echo "Error " . $e->getMessage(); } أو تغيير وضع الأخطاء إلى MYSQLI_REPORT_OFF، بمعنى لا تقم بعمل تقرير للأخطاء بالشكل التالي: mysqli_report(MYSQLI_REPORT_OFF); $con = @mysqli_connect("localhost","user","password","my_db"); if ($con) { echo 'connected'; } else { echo 'not connected ' . mysqli_connect_error(); } @ قبل إسم الدالة لمنع التحذيرات من الظهور، حاول عدم إستخدامها و سيظهر تحذير في المتصفح لكن البرنامج لن يتوقف سيواصل التنفيذ. 1 اقتباس
0 عمر عبدالوهاب نشر 21 أغسطس 2023 الكاتب أرسل تقرير نشر 21 أغسطس 2023 بتاريخ 17 ساعة قال Mustafa Suleiman: رسالة الخطأ تخبرك أنه لم يتم التعرف على قاعدة البيانات Unknown database 'stdz'، قم بالتأكد من قاعدة البيانات موجودة بالفعل وإن لم تجدها عليك إنشائها، وأظن أنها كانت لديك باسم std وليس stdz. وأتفهم ما تريد الوصول إليه، لكن لن يتم عرض الرسالة not connected والصحيح هو استخدام الكود التالي لعرض رسالة Database 'hsubgram' does not exist في حالة لم يتم إيجاد قاعدة بيانات بذلك الاسم : <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title> </head> <body> <?php if(isset($_POST["con"])){ $servername = 'localhost:3306'; // Hostname only $username = 'root'; $password = ''; $database = 'hsubgram'; // Connect to the server $conn = mysqli_connect($servername, $username, $password); if (!$conn){ die("Connection failed: " . mysqli_connect_error()); } // Check if the selected database exists $db_check_query = "SELECT SCHEMA_NAME FROM INFORMATION_SCHEMA.SCHEMATA WHERE SCHEMA_NAME = '$database'"; $db_check_result = mysqli_query($conn, $db_check_query); if (!$db_check_result) { die("Database check failed: " . mysqli_error($conn)); } if (mysqli_num_rows($db_check_result) == 0) { die("Database '$database' does not exist."); } mysqli_close($conn); echo "Connected to database: $database"; } ?> <form method="POST"> <center> <input type="submit" value="connect" name="con"> </center> </form> </body> </html> اشكرك استاذي على مجهودك الطيب لقد تم حل المشكلة اقتباس
السؤال
عمر عبدالوهاب
Fatal error: Uncaught mysqli_sql_exception: Unknown database 'stdz' in C:\xampp\htdocs\phpsql\db-connect.php:16 Stack trace: #0 C:\xampp\htdocs\phpsql\db-connect.php(16): mysqli_connect('localhost:4306', 'root', Object(SensitiveParameterValue), 'stdz') #1 {main} thrown in C:\xampp\htdocs\phpsql\db-connect.php on line 16
4 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.