重複の可能性:
警告: PDOStatement::execute(): SQLSTATE[HY093]: 無効なパラメーター番号: バインドされた変数の数がトークンの数と一致しません
広告の種類のさまざまなオプションを指定して広告フォームを送信しようとしましたが、フォームを送信すると次のエラーが表示されます。
エラー: SQLSTATE[HY093]: 無効なパラメーター番号: バインドされた変数の数がトークンの数と一致しません
SQL コード:
try
{
$pdo_options[PDO::ATTR_ERRMODE] = PDO::ERRMODE_EXCEPTION;
$bdd = new PDO('mysql:host=localhost;dbname=test', 'root', '', $pdo_options);
$req = $bdd->prepare('INSERT INTO ads (kind, kind2, kindsale, titre, price, money, country, state, county, city, adress, phone, message, image, image2, image3, image4, image5, image6, inputid, date, ldesc, email, account, room, area, uarea, file, mark, miles, mi) VALUES(?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)');
$req->execute(array($_POST['kind'], $_POST['kind2'], $_POST['kindsale'], $_POST['titre'], $_POST['price'], $_POST['money'], $_POST['country'], $_POST['state'], $_POST['county'], $_POST['city'], $_POST['adress'], $_POST['phone'], $_POST['message'], '1'.$name.$name6.$_FILES['image']['name'], '2'.$name2.$name5.$_FILES['image2']['name'], '3'.$name3.$name4.$_FILES['image3']['name'], '4'.$name4.$name3.$_FILES['image4']['name'], '5'.$name5.$name2.$_FILES['image5']['name'], '6'.$name6.$name.$_FILES['image6']['name'], $_POST['inputid'], $_POST['date'], $_POST['ldesc'], $_POST['email'], $_POST['taccount'], $_POST['room'], $_POST['area'], $_POST['uarea'].$name3.$name4.$_FILES['file']['name'], $_POST['mark'], $_POST['mileage'], $_POST['mi']));
header('Location: index.php');
}
catch(Exception $e)
{
die('Error: '.$e->getMessage());
}
フォーム内の一部のデータは $('.thing').hide(); で非表示になります。jqueryでは、これらはvoidとして送信されているため、非表示でも存在すると思います。
ありがとう