在php mysql中使用多个条件进行搜索

时间:2017-06-22 08:41:44

标签: php mysql

我正在尝试使用多个条件搜索特定数据。我使用年龄,位置,类型作为多个搜索条件。如果年龄为6-12岁且类型为户外,则仅显示特定标准。在下面的代码中,它搜索年龄组是否为6-12,位置是oudoor,它显示6-12岁和12-18岁的位置为室外的值。即使只有1个标准,即年龄,位置或类型,也要搜索进入了。

这是代码

<?php
 $username = "root";
$password = "";
$hostname = "localhost"; 
$db = "game";

    // Connect to server and select database.
    $conn=mysql_connect($hostname,$username,$password)or die("cannot connect"); 
    mysql_select_db($db,$conn)or die("cannot select DB");
     if(!$conn)
     {
         die("cannot connect");
     }
if(isset($_POST['submit'])) 
{


$name=$_POST["name"];
$age=$_POST["age"];
$location=$_POST["location"];
$type=$_POST["type"];




 $query = "SELECT * FROM `game1` WHERE age ='$age' or location='$location' or type='$type'";



$run = mysql_query($query);


if(mysql_num_rows($run)>0){
header("Location: gamesearch1.php?age=$age&location=$location&type=$type");
}

else {

    echo "<script>alert('No members Yet!')</script>";
    }
}
?> 

1 个答案:

答案 0 :(得分:1)

您应该使用AND代替OR作为标准。你应该真的使用参数化查询!