我需要创建一个select查询,根据多个变量获取记录 像:
<?PHP
@$task=$_REQUEST['task'];
@$Country=$_REQUEST['Country'];
@$City =$_REQUEST['City'];
@$MosqName =$_REQUEST['txtMsqName'];
@$PostCode =$_REQUEST['txtPostalCode'];
$sql_serch="SELECT Country="."'".$Country."'", " City="."'".$City."'"." FROM job_mosqu";
?>
它不起作用。
答案 0 :(得分:2)
不要忘记逃避你的输入! 从不将用户输入的变量(例如来自$_REQUEST
的变量)直接放入SQL查询中。使用参数化查询或使用mysql_real_escape_string
,mysqli::real_escape_string
或PDO::quote
转义输入,具体取决于您查询的内容...
关于这个问题的一些阅读:
要回答您的实际问题,请使用WHERE
clause。
SELECT * FROM job_mosqu WHERE Country = ? AND City = ? ...
有很多关于使用where子句的内容,如果你对它不满意的话,可以进行一些搜索......
答案 1 :(得分:1)
您正在寻找AND
SELECT * FROM job_mosqu WHERE Country='$country' AND City= '$City'
等等...
答案 2 :(得分:0)
SELECT * FROM job_mosqu WHERE Country='$country' AND City= '$City' AND task = '$task' AND $MosqName = '$MosqName';
答案 3 :(得分:0)
查询不正确。查询非常糟糕。可能你想要下一个?
$task=$_REQUEST['task'];
$Country =$_REQUEST['Country'];
$City =$_REQUEST['City'];
$MosqName =$_REQUEST['txtMsqName'];
$PostCode =$_REQUEST['txtPostalCode'];
$sql_serch="SELECT `Country`, `City` FROM `job_mosqu` WHERE `City`='" . $City. "' AND `Country`='" . $Country . "'";