无脂框架sql清理

时间:2013-02-27 02:06:18

标签: mysql syntax fat-free-framework

所以我正在尝试学习f3,数据库语法正在逃避我。

查看docs似乎您传递了一串sql和值数组来替换。但我似乎无法让它工作。我试过使用一个参数,使用数组,不使用数组等,最终我需要在查询中替换5+变量,所以我真的需要了解它是如何工作的。提前完成。

$db = new DB\SQL(
    $f3->get('db'), 
    $f3->get('dbuser'), 
    $f3->get('dbpass')
);
$x = $db->exec(
    "SELECT user_id, email, token FROM `user_primary` WHERE `first_name` = ':first' AND `last_name` = ':last';",
    array(
        ':first' => $f3->get('PARAMS.first'),
        ':last' => $f3->get('PARAMS.last')
    )
);
echo '<pre>'.print_r($x, true).'</pre>';

1 个答案:

答案 0 :(得分:4)

我正在制作的错误是引号。

select * from table where name = ':name'

不正确。你需要删除引号

select * from table where name = :name

所以如果你想使用多个只是数组嵌套它们

$db->exec(
    `select * from table where first_name = :fname and last_name = :lname`,
    array(
        ':fname' => 'xero',
        ':lname' => 'harrison'
    )
);

也许这会帮助别人。