SQL-Syntaxfehler in MySQL

Ich füge einen Wert in meine MySQL-Tabelle von einphp wie:

$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'";

beim versuchenecho zum$sql Ich erhalte die Ausgabe als:

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'

aber ich erhalte ständig die gleiche Fehlermeldung:

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

auch wenn ich versuche zu entfernen' um die Werte von Spaltennamen.
Ich verwende die gleiche Syntax zum Einfügen von Daten und das funktioniert gut.
Was ist daran falsch?
Warum gibt MySQL für solch einen schrecklichen Fehler keinen richtigen Fehler aus?

Antworten auf die Frage(4)

Ihre Antwort auf die Frage