こんにちはみんな私は「名前」フィールドを持つテーブル「アイテム」を持っています。データを挿入しようとしていますが、エラーが発生します。詳細については、以下のコードを参照してください。
item.php
class Item {
public function create(){
$attributes = $this->attributes();
$pair = array();
foreach($attributes as $key => $value){
$pair[] = "'{$key}'=>{$value}";
}
$bind = ":" . implode(", :",array_keys($attributes));
$sql = "INSERT INTO " . static::$table_name
. " (" . join(",",array_keys($attributes)) . " ) VALUES "
. " ( " . $bind . " )";
$stmt = $this->database->prepare($sql);
$result = $stmt->execute($pair);
if($result){
return $result;
} else {
$error = $this->database->errorInfo();
return $error;
}
}
}
index.php
<?php
$item->name = "Sample Name";
$item->create();
?>
エラー:
Warning: PDOStatement::execute(): SQLSTATE[HY093]: Invalid parameter number: parameter was not defined in PATH on line 62