次のようにMySQLテーブルに値を挿入していますphp
:
$journey = $_POST['way'];
$from = $_POST['from'];
$to = $_POST['to'];
$dpdt = $_POST['dp_date'];
$rtdt = $_POST['rt_date'];
$fare = $_POST['fare'];
$sql = "insert into tours set " .
"journey='$journey', from='$from', to='$to', dp_date=CAST('$dpdt' AS DATE), " .
"rt_date=CAST('$rtdt' AS DATE), fare='$fare'";
試してみるとecho
、次の$sql
ような出力が得られます。
insert into tours set journey='round', from='Aurangabad', to='Kashmir', dp_date=CAST('27-08-2013' AS DATE), rt_date=CAST('21-08-2013' AS DATE), fare='2500'
しかし、私は継続的に同じエラーメッセージを受け取ります:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'from=Aurangabad, to='Kashmir', dp_date=CAST('27-08-2013' AS DATE), rt_date=CAST(' at line 1
'
列名の値の周りを削除しようとしても。
データの挿入に同じ構文を使用していますが、問題なく動作しています。
これの何が問題なのですか?
なぜ MySQL は、このようなひどい間違いに対して適切なエラーを出さないのでしょうか?