检查所有列的值

时间:2014-01-24 00:07:11

标签: php mysql

我有一个表有4个答案字段,名为a1,a2,a3,a4。 其中一些可能被标记为正确。我将“-correct”添加到了正确的答案中。

无论如何,现在用户在选择答案时,我希望与任何正确的答案进行比较。

我只熟悉%LIKE%和WHERE函数。我正在尝试使用MATCH AGAINST。 任何帮助将不胜感激。

麦克

PHP:

     public function checkAnswer($id, $answer){
     try{

        $_id = $this->db->mysqli->real_escape_string($id);
        $_answer = $this->db->mysqli->real_escape_string($answer);
        $viewer_answered = $_answer."-correct";

        $sql = "SELECT * FROM myTbl WHERE match(a1,a2,a3,a4) against('+ $viewer_answered' IN BOOLEAN MODE) AND id='{$_id}'";
        $result = $this->db->mysqli->query($sql);

            if(!$result)
            {
                 throw new Exception("Query failed: " . $sql . " - " . $this->db->mysqli->error);
            }else{

              // I dont know how to check the result of the match! any help please

            }    


        } catch(Exception $e){
           echo("Message: " . $e->getMessage());
        }



}

1 个答案:

答案 0 :(得分:1)

您的sql字符串格式不正确:

$sql = "SELECT * FROM myTbl WHERE match(a1,a2,a3,a4) against('".$viewer_answered."' IN BOOLEAN MODE) AND id='{$_id}'";