Я недавно задал этот вопрос здесь: Почему этот запрос не дает результата mysql_error ()?
Предложенное решение состояло в том, чтобы использовать вместо этого mysql_affered_rows () ...... однако я только нашел способ попробовать это, но это делает противоположное ...
Если я сделаю это ..
if (mysql_affected_rows() < 1) {
$etext = 'Problem removing list main entry from database.';
$log_error = $etext . ' MySQL Error: ' . mysql_error() . '. Query: ' . $query;
log_site_error($log_error);
throw new Exception($etext);
}
... или это:
if (mysql_affected_rows() < 0) {
$etext = 'Problem removing list main entry from database.';
$log_error = $etext . ' MySQL Error: ' . mysql_error() . '. Query: ' . $query;
log_site_error($log_error);
throw new Exception($etext);
}
Это ВСЕГДА идет в разделе ошибок, означая, что это всегда ДУМАЕТ, что была проблема. Я попытался запрос, который был выведен в файл журнала, и он работает нормально. Я также полностью удалил эти разделы проверки ошибок, и все прошло нормально .... строки базы данных были удалены, как и ожидалось.
Как я могу эффективно проверить это?
Редактировать: Как ни странно, когда я добавил соединение с ресурсами БД в качестве параметра в вызов mysql_error (), это сработало.