0

この部分に構文エラーがあるようです。それは私を怒らせています。挿入構文が正しくない可能性がありますか?

public static function saveUser($form)
{
  $connexion = new PDO("mysql:host=localhost;dbname=cdiscountdb", 'root', 'root'); // connexion à la BDD
  $connexion->setAttribute  (PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
  $connexion->exec("INSERT INTO ope_tartine_nl(first_name,last_name,email,created_date,updated_date) VALUES ($form['name'],$form['lastname'],$form['email'],date("Y-m-d H:i:s"),date("Y-m-d H:i:s"))");

}

よろしくお願いします

4

3 に答える 3

2

文字列に値を埋め込もうとしています。以下をお読みください。

次に、このバージョンのコードを見てください。

public static function saveUser($form)
{
  $connexion = new PDO("mysql:host=localhost;dbname=cdiscountdb", 'root', 'root'); // connexion à la BDD
  $connexion->setAttribute  (PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
  $sql = "INSERT INTO ope_tartine_nl(first_name,last_name,email,created_date,updated_date) VALUES (?,?,?,?,?)";
  $cmd = $connexion->prepare($sql);
  $result = $connexion->exec(array($form['name'], $form['lastname'], $form['email'], date("Y-m-d H:i:s"), date("Y-m-d H:i:s")));
}
于 2012-12-13T14:25:25.663 に答える
1
$connexion->exec("INSERT INTO ope_tartine_nl(first_name,last_name,email,created_date,updated_date) VALUES ('".$form['name']."','".$form['lastname']."','".$form['email']."','".date("Y-m-d H:i:s")."','".date("Y-m-d H:i:s"))."'");
于 2012-12-13T14:04:40.180 に答える
0

質問にZendFrameworkのタグを付けたので、これを行うZFの方法は次のようになります。

$db->insert('ope_tartine_nl', array(
    'first_name' => $form['name'],
    'last_name' => $form['lastname'],
    'email' => $form['email'],
    'created_date' => date("Y-m-d H:i:s"),
    'updated_date' => date("Y-m-d H:i:s")
));

$dbZend_Dbアダプタインスタンスはどこにありますか)

于 2012-12-13T14:36:47.757 に答える