何が失敗しているのか、そしてその理由を正確に把握できるように、適切なエラー処理を追加する必要があります。
まず、例外をスローするようにPDOに指示する必要があります:
$pdo = new PDO("mysql:host={$dbhost};dbname={$dbname}", $dbuser, $dbpass);
// add this:
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
次に、データベース操作をtry
でラップできます。 -catch
ブロック:
try
{
$statement = $pdo->prepare('INSERT INTO arefin (name1,address,city,state,zip_code,telephone,email,fiance,wedding_date,number_of_guest,radio,newspaper,facebook,website,hear_by_other,by_other,date1,status) VALUES (:var1,:var2,:var3,:var4,:var5,:var6,:var7,:var8,:var9,:var10,:var11,:var12,:var13,:var14,:var15,:var16,:var17,:var18)');
$statement->bindParam(':var1',$name1);
// etc.
$statement->execute();
}
catch ( PDOException $exception )
{
echo "PDO error :" . $exception->getMessage();
}
コメントには長すぎますが、問題の解決に役立つはずです...