我有一个关于编写php页面的问题,我可以看到一个表(一个mysql表)但我必须在插入用户名,id_user,电子邮件或地址(例如)时过滤此表。我将复制我为单个字段编写的代码:
if (!isset($_GET['name']))
$query = "not interesting";
else if($_GET['name'] != ''){
$var145 = $_GET['name'];
$query = "not interesting where `Name` = '$var145'";
}
else
$query = "not interesting";
这项工作非常好,因为当表单未发送时,它将显示所有表,当文本不为null时,它将显示带有过滤器的查询,当文本为null时,它将显示所有表。你知道怎么帮我吗?我不知道如何改进三个输入文本来研究更好的记录,因为我必须检查变量的存在然后决定做什么。抱歉我的英语不好,我希望你能理解我的问题。谢谢大家
答案 0 :(得分:0)
尤里卡!这不是我能想象的最好的代码,但我发布它希望它对某人有用
$doc1_queryI = "SELECT * from t_history";
$var1 = 0; //a
$var2 = 1; //b
$var3 = 1; //c
$var4 = 0; //d
$varAnd =0;
if($var1==1 or $var2==1 or $var3==1 or $var4==1)
$doc1_queryF = $doc1_queryI." where"; //se almeno una session esiste
if($var1==1){
$doc1_queryF = $doc1_queryF." x=a ";
$varAnd =1;
}
if($var2==1)
{
if($varAnd==1)
$doc1_queryF = $doc1_queryF." and ";
$doc1_queryF = $doc1_queryF." y=b ";
else
$varAnd =1;
}
if($var3==1)
{
if($varAnd==1)
$doc1_queryF = $doc1_queryF." and ";
$doc1_queryF = $doc1_queryF." z=c ";
else
$varAnd =1;
}
if($var4==1)
{
if($varAnd==1)
$doc1_queryF = $doc1_queryF." and ";
$doc1_queryF = $doc1_queryF." p=d ";
}
echo $doc1_queryF;`