3

だから私はf3を学ぼうとしていますが、データベースの構文は私を理解していません。

ドキュメントを見ると、SQLの文字列と値の配列を渡して置き換えるようです。しかし、私はそれを機能させることができないようです。1つのパラメーターを使用する、配列を使用する、配列を使用しないなどを試しました。最終的には、クエリで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>';
4

1 に答える 1

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'
    )
);

多分これは他の誰かを助けるでしょう。

于 2013-02-27T02:15:11.913 に答える