как настроить сообщения об ошибках joomla db sql и как предотвратить повторяющиеся записи - PullRequest
1 голос
/ 05 декабря 2011

моя таблица showtime содержит следующие поля,

id, name, showtime где id - поле с автоматическим приращением типа int (pK). showtime тип времени уникальное поле.

когда я пытаюсь добавить showtime (дублирующее значение) в поле showtime ($ row-> store ()), оно показывает следующее сообщение об ошибке joomla (я использовал $ row-> getError () метод)

    TableShowTime: :store failed
    Duplicate entry '10:30:00' for key 'showtime' SQL=INSERT INTO `jos_myextension_showtime` (`id`,`name`) VALUES ('0','evening')

Я хочу знать, есть ли способ показать только сообщение об ошибке db без отображения запроса sql . У меня есть идея проверить дубликаты значений с помощью запроса перед вставкой, это хорошая практика? Plz Help.

1 Ответ

2 голосов
/ 05 декабря 2011

Я думаю, что если вы не хотите отображать запрос, вам не следует показывать и другую часть сообщения об ошибке (не говорите пользователю, что вы пытаетесь вставить дубликат ключа).Простым решением этой проблемы может быть что-то вроде этого:

if ( $row>getError() ) {
   echo "Could not store [...]";
}

Если это пользовательский компонент, вы также можете изменить класс таблицы, чтобы настроить эти сообщения об ошибках, или даже показать отдельные сообщения об ошибках в зависимости от ошибкиномер.

Надеюсь, это помогло!

...