如何自定义joomla db sql错误消息以及如何防止重复条目

时间:2011-12-05 06:53:05

标签: joomla joomla1.5 joomla-extensions

我的showtime表包含以下字段,

id,name,showtime 其中 id 是一个int类型自动增量字段(pK)。 showtime 时间类型唯一字段。

当我尝试向showtime字段添加showtime(重复值)时($ row-&gt; store()),它显示以下joomla错误消息。(我使用 $ row-&gt; getError()< / strong>方法)

    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帮助。

1 个答案:

答案 0 :(得分:2)

我认为如果您不想显示查询,那么您也不应该显示错误消息的其他部分(不要告诉用户您尝试插入重复的密钥)。对此的简单修复可能是这样的:

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

如果这是一个自定义组件,您还可以修改表类以自定义这些错误消息,甚至根据错误号显示不同的错误消息。

我希望它有所帮助!