I'm trying to build a dynamic query and am getting an SQL syntax error. The following query statement works correctly when typed out explicitly:
$sql = "SELECT * FROM English WHERE submitdate = '2015-09-30'";
However, if I try build the same query with _POST parameters, I get a syntax error, even though the error shows the correct query as above:
if ($_POST["lang"] === "de") :
$query_lang = 'SELECT * FROM German';
elseif ($_POST["lang"] === "en") :
$query_lang = 'SELECT * FROM English';
else :
$query_lang = 'SELECT * FROM English, German';
endif;
if ( !empty($_POST["date"]) || $_POST["date"] != "all") :
$query_date = ' WHERE submitdate = \''. $_POST["date"] . '\'';
else :
$query_date = '';
endif;
$sql = '"' . $query_lang . $query_date . '"';
The error message is
Error: "SELECT * FROM English WHERE submitdate = '2015-09-30'"<br>
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
'"SELECT * FROM English WHERE submitdate = '2015-09-30'"' at line 1