cakePHP准备好的声明不起作用(取不出全部工作)

时间:2016-06-27 23:18:28

标签: php sql-server cakephp prepared-statement cakephp-2.0

我正在使用cakePHP,无法弄清楚如何准备一个sql语句。我尝试过很多东西,但似乎没什么用。我正在使用sql server 2014.

在食谱中,我找到了准备好的陈述的确切代码:

    $db = $this->getDataSource();
    $db->fetchAll(
        'SELECT * from users where username = :username AND password = :password',
        array('username' => 'jhon','password' => '12345')
    );

但是,当我尝试使用此代码时(只是为了看看我是否可以使用它),这是我的结果:

  

警告(512):SQL错误:第1行:':'附近的语法不正确。 [APP / Model / Datasource / Mssql.php,第749行]

和我的调试:

  

查询:来自用户的SELECT *,其中username =:username AND password =:password

有谁知道为什么这不起作用?任何帮助都会很棒,谢谢!

1 个答案:

答案 0 :(得分:0)

试试这个:

$db = $this->getDataSource();
$username = 'jhon';
$password = '12345';
$db->fetchAll("SELECT * from users where username = $username AND password = $password");