0
$dbh = new PDO('mysql:host=' . $_POST['db_host'], $_POST['db_user'], $_POST['db_user_password']);
$sql = 'CREATE DATABASE :db_name';
$sth = $dbh->prepare($sql);
$sth->bindParam(':db_name', $_POST['db_name']);
var_dump($sth->execute());

それは常にfalseを示しています。ただし、db_name を直接指定すると、次のようになります。

$sql = 'CREATE DATABASE database';
$sth = $dbh->prepare($sql);
$sth->execute();

それが動作します。私が間違っていることは何ですか?

4

1 に答える 1