Как преобразовать wpdb ошибки?

Например вношу новое поле, а мне возвращает

<strong>WordPress database error:</strong> [Duplicate entry 'test 2. 2' for key 'name']

Как обработать этот код, чтобы к примеру вывести "Поле с таким именем существует!"
  • Вопрос задан
  • 309 просмотров
Решения вопроса 1
orlov0562
@orlov0562 Куратор тега PHP
I'm cool!
Зависит от того как ты делаешь запрос

if ($res = $wpdb->query( $wpdb->prepare('INSERT IGNORE INTO tbl SET name = %s', 'test' ))) {
echo 'Все ок';
} else {
echo 'Уже существует';
}


или так:

$wpdb->hide_errors();
if ($res = $wpdb->query( $wpdb->prepare('INSERT INTO tbl SET name = %s', 'test' ))) {
echo 'Все ок';
} else {
echo strpos($wpdb->last_error,'Duplicate entry') ? 'Уже существует' : $wpdb->last_error;
}


как-то так. Все методы с примерами хорошо описаны тут: https://codex.wordpress.org/Class_Reference/wpdb
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы