有没有办法可以将这些 bindParam 语句放在一个语句中?
$q = $dbc -> prepare("INSERT INTO accounts (username, email, password) VALUES (:username, :email, :password)");
$q -> bindParam(':username', $_POST['username']);
$q -> bindParam(':email', $_POST['email']);
$q -> bindParam(':password', $_POST['password']);
$q -> execute();
我在可能的情况下使用了之前准备的 mysqli,我切换到 PDO 以获得 assoc_array 支持。在 PDO 的 php.net 网站上,它以单独的行显示它们,在我看到的所有示例中,它都在单独的行中。
有可能吗?
最佳答案
关于 execute
的示例 2页面是你想要的:
$sth->execute(array(':calories' => $calories, ':colour' => $colour));
您可能还想查看其他示例。使用问号参数,它将是:
$q = $dbc -> prepare("INSERT INTO accounts (username, email, password) VALUES (?, ?, ?)");
$q->execute(array($_POST['username'], $_POST['email'], $_POST['password']));
如果只有这些列,您可以只写:
$q = $dbc -> prepare("INSERT INTO accounts VALUES (?, ?, ?)");
$q->execute(array($_POST['username'], $_POST['email'], $_POST['password']));
关于php - PDO bindParam 变成一条语句?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5684191/