У меня есть 4 вопроса, которые запускаются на сообщение. Я заметил, что не все запросы работают, если у одного из первых запросов нет работы.понимание php die с mysql_error
Вот мои запросы
mysql_query("UPDATE invoice SET company='$company' WHERE company='$oldcompanyname'") or die(mysql_error());
mysql_query("UPDATE bill SET customer='$company' WHERE customer='$oldcompanyname'") or die(mysql_error());
mysql_query("UPDATE project SET customer='$company' WHERE customer='$oldcompanyname'") or die(mysql_error());
mysql_query("INSERT INTO activity_log (item, date) VALUES ('Customer Editted', NOW()) ") or die(mysql_error());
Чтобы дать вам пример, первый работает нормально. Но второй не имеет работы, потому что данных в поле не существует. Третий и четвертый должны бежать, но они этого не делают.
Я всегда привык добавлять мои запросы с помощью «или умереть (mysql_error())»; но я сейчас думаю, что это не лучший выбор. Но не должны ли остальные запросы работать, даже если в середине нет работы?
Если есть работа, выполняемая во всех 4, то она отлично работает.
'die()' в основном выходит из скрипта, вы должны знать только имя. Так что если второй не удастся, скрипт перестанет исполняться, поэтому 3-й и 4-й не будут выполнены! – HamZa
Второй не должен получать ошибку только потому, что нет соответствующей строки. – Barmar
Ах забыл сказать, что die является эквивалентом 'exit()', и вы можете отправить сообщение клиенту, и именно поэтому вы используете mysql_error для отображения ошибки. – HamZa