使用PHP验证SQL查询

时间:2009-09-06 16:07:31

标签: php sql validation postgresql

由于某种原因,验证似乎失败了。通过验证,我的意思是“if ($result)” - 部分。如何正确验证SQL查询?

$dbconn = pg_connect("host=localhost port=5432 dbname=heoa user=heoa password=123");
$email  = $_POST['login']['email'];

$result = pg_query_params( $dbconn,
                'SELECT user_id
                FROM users
                WHERE email = $1',
                array( $email )
                );
if ($result)
{
        while ( $row = pg_fetch_array( $result ) )
        {
                $user_id = $row['user_id'];
        }
        return $user_id;
}

2 个答案:

答案 0 :(得分:2)

我怀疑返回值是整数零,它在if语句中也被假为false。通过“if($ result!== FALSE)”(注意它应该是!==和 !=)你将验证结果是否真的是不同于FALSE而不仅仅是假......

答案 1 :(得分:0)

您是否应该在SQL查询中添加约1美元的撇号,例如?

SELECT user_id
FROM users
WHERE email = '$1'

我不确定PHP如何扩展$ 1变量。