۶ حمید فردوسی
نمایش خطای عدم اتصال به دیتابیس
جامعه پی اچ پی ایجاد شده در ۱۴ اسفند ۱۴۰۱

با سلام و احترام

یک موردی برای من پیش اومده اونم این که کدها به درستی اجرا میشه، اتصال به دیتابیس درست انجام میشه و پیام تائید اتصال به دیتابیس نمایش داده میشه. ولی زمانی که برای به صورت عمدی در اطلاعات ورود به دیتابیس اشکالی وارد میکنم تا Connect_Errno رو ببینم Fatal Error اتصال به دیتابیس رو نشون میده و کد اجرا نمیشه و خطای زیر رو میده.

[Running] php "c:\\xampp\\htdocs\\7learn\\index.php"

Fatal error: Uncaught mysqli_sql_exception: Access denied for user 'rooot'@'localhost' (using password: NO) in C:\\xampp\\htdocs\\7learn\\index.php:4

Stack trace:

#0 C:\\xampp\\htdocs\\7learn\\index.php(4): mysqli->__construct('localhost', 'rooot', Object(SensitiveParameterValue), '')

#1 {main}

  thrown in C:\\xampp\\htdocs\\7learn\\index.php on line 4

PHP Fatal error:  Uncaught mysqli_sql_exception: Access denied for user 'rooot'@'localhost' (using password: NO) in C:\\xampp\\htdocs\\7learn\\index.php:4

Stack trace:

#0 C:\\xampp\\htdocs\\7learn\\index.php(4): mysqli->__construct('localhost', 'rooot', Object(SensitiveParameterValue), '')

#1 {main}

  thrown in C:\\xampp\\htdocs\\7learn\\index.php on line 4

[Done] exited with code=255 in 0.216 seconds

با تشکر

سلام حمید عزیز

کد رو به شکل زیر قرار بدید و exit کنید:

if ($mysqli -> connect_errno) {
  echo "Failed to connect to MySQL: " . $mysqli -> connect_error;
  exit();
}
احمدرضا فاطمی کیا ۱۴ اسفند ۱۴۰۱، ۱۵:۳۴

ممنون

دقیقا همین کدی که توی پیوست این جلسه هست همینجوری که شما فرمودید نوشته شده ولی همین کد هم به Fatal Error میخوره

حمید فردوسی ۱۴ اسفند ۱۴۰۱، ۱۵:۵۳

عکس به پیوست ارسال شد

حمید فردوسی ۱۴ اسفند ۱۴۰۱، ۱۶:۱۱

حمید عزیز

متد connect error برای موارد مربوط به اتصال به پایگاه داده هست مثل پیدا نشدن دیتابیس مدنظر و این دسته موارد.

در سرفصل خطایابی و دیباگینگ هندل کردن این مورد رو یاد میگیرید که به شکل زیر هست:

try{
new mysqli('localhost','root','7learn','');
}catch(\\Throwable $e){
echo 'connect error!';
}
احمدرضا فاطمی کیا ۱۴ اسفند ۱۴۰۱، ۱۶:۱۵

ممنون از پاسخگوییتون ولی این مشکل فقط منتهی به اتصال به دیتابیس نمیشه، توی بحث ساخت جدول هم به این مورد برخورد کردم، درصورتی که ساخته بشه کدها بدون مشکل کار میکنه ولی درصورتی که در کد مشکلی باشه یا جدول از قبل ساخته شده باشه دوباره اررور میده مشابه عکس پیوست

حمید فردوسی ۱۴ اسفند ۱۴۰۱، ۱۶:۵۸

حمید عزیز

این موارد مربوط به ارور هندلینگ هست و پیشنهاد میکنم تا رسیدن به سرفصل مربوطه صبور باشید.

تمام راهکارها رو یاد میگیرید.

احمدرضا فاطمی کیا ۱۴ اسفند ۱۴۰۱، ۱۷:۲۹