Правильная проверка успешности выполнения $wpdb->update() в WordPress
7 янв. 2011 г., 06:08:36
Просмотры: 18.8K
Голосов: 5
Мой код:
if( $wpdb->update($tableName,array('opt_value'=>$cInfo),array('opt_name'=>'showWeatherWidget')))
//показать сообщение об успехе
else
// показать сообщение об ошибке
Это неправильно, так как $wpdb->update()
возвращает false, если не было изменено ни одной строки, даже если ошибок не было. Кто-нибудь может подсказать правильный способ вывода сообщения об успешном обновлении поля?

JakeParis
663
Комментарии
Все ответы на вопрос
1
2
Правильный способ — использовать === FALSE
, что позволяет отличить ошибку от случая, когда запрос выполнен успешно, но не возвращает результатов (в этом случае возвращается ноль).
if( $wpdb->update($tableName,array('opt_value'=>$cInfo),array('opt_name'=>'showWeatherWidget')) === FALSE)
// показать сообщение об ошибке
else
// показать сообщение об успехе

JakeParis
663
7 янв. 2011 г. 06:20:50
Комментарии
Это противоречит данному ответу, http://stackoverflow.com/questions/6529242/wpdb-what-does-it-return-on-fail, где говорится: if ($result === false) // Ошибка -- оператор "===" сравнивает как тип, так и значение

15 мар. 2012 г. 23:54:21
Похожие вопросы
2
ответов