0

下面的代码接收一个查询,并且只能在查询包含“INSERT”或“UPDATE”时执行它。但是当我输入它'INSERT INTO test_table(id,test_value)VALUES(1,'Test')'时,它会引发'需要更新或插入查询'。

我错过了什么?

    public function setQuery($query)
{                
    if(strpos($query, 'INSERT') === false && strpos($query, 'UPDATE') === false ) {
                trigger_error('Method [' . __FUNCTION__ . '] requires an Update or Insert query [Q: '.$query.']');
                exit;
            }

    $this->_queries++;                
    mysql_query($query);
    $this->_result = mysql_insert_id();

    if(!$this->_result) {
                trigger_error('Method [' . __FUNCTION__ . '] failed [Q: '.$query.']');
    }                
    return $this->_result;
}
4

2 回答 2

3

也许有人向您发送“插入”?试试stripos :)

于 2011-07-15T08:15:22.243 回答
1

当我使用您提供的参数尝试它时它可以工作。

(顺便说一句,如果你使用stripos,它会更健壮一些)

不能告诉你为什么它不适合你。

C。

于 2011-07-15T08:16:30.717 回答