Как проверить, прошел ли запрос MySQL с использованием устаревшего API?

Как проверить, является ли запрос MySQL успешным, кроме использования функции die()

Я пытаюсь достичь …

 mysql_query($query); if(success){ //move file } else if(fail){ //display error } 

Это первый пример на странице руководства для mysql_query :

 $result = mysql_query('SELECT * WHERE 1=1'); if (!$result) { die('Invalid query: ' . mysql_error()); } 

Если вы хотите использовать что-то другое, кроме как die , тогда я предлагаю trigger_error .

Вы также можете использовать mysql_errno() .

 $result = mysql_query($query); if(mysql_errno()){ echo "MySQL error ".mysql_errno().": " .mysql_error()."\n<br>When executing <br>\n$query\n<br>"; } 

Если ваш запрос не удался, вы получите возвращаемое значение FALSE. В противном случае вы получите ресурс / ИСТИНА.

 $result = mysql_query($query); if(!$result){ /* check for error, die, etc */ } 

В принципе, пока это не ложно, все в порядке. Впоследствии вы можете продолжить свой код.

 if(!$result) 

Эта часть кода фактически выполняет ваш запрос.

Функция mysql_query используется для выполнения запроса mysql в php. mysql_query возвращает false, если выполнение запроса не выполняется. Альтернативно вы можете попробовать использовать mysql_error() Например,

 $result=mysql_query($sql) 

или

 die(mysql_error()); 

В приведенном выше фрагменте кода, если выполнение запроса не выполняется, оно прекратит выполнение и отобразит ошибку mysql во время выполнения запроса sql.

положить только:

or die(mysqli_error());

после вашего запроса

и он будет исправлять ошибку как echo

пример

 // "Your Query" means you can put "Select/Update/Delete/Set" queries here $qfetch = mysqli_fetch_assoc(mysqli_query("your query")) or die(mysqli_error()); if (mysqli_errno()) { echo 'error' . mysqli_error(); die(); } 

если вы используете MySQLi bind_param, попробуйте поставить эту строку над запросом

 mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);