Php 在MySQL数据库中搜索多个列的特定语法?
我正致力于创建一个所有学生和相关信息的可搜索数据库(用于一个涉及管理iPad部署的大型项目)。数据库有7列:Php 在MySQL数据库中搜索多个列的特定语法?,php,mysql,search,Php,Mysql,Search,我正致力于创建一个所有学生和相关信息的可搜索数据库(用于一个涉及管理iPad部署的大型项目)。数据库有7列: 名字 姓 身份证号码 等级 毕业年 学生电子邮件 多巴哥 如果输入与行中的任何值匹配,我需要返回整行 我正在使用的PHP是: <?php $conn = mysql_connect ("localhost", "blmrvftl_ipdb", "ipad-db") or die ('I cannot connect to the database because: ' . m
- 名字
- 姓
- 身份证号码
- 等级
- 毕业年
- 学生电子邮件
- 多巴哥
<?php
$conn = mysql_connect ("localhost", "blmrvftl_ipdb", "ipad-db") or die ('I cannot connect to the database because: ' . mysql_error());
$selected = mysql_select_db ("blmrvftl_ipdb")
or die ("Could not select database because: " . mysql_error());
// PHP Search Script
$sql = "select * from phonebook, where first_name = '".$_GET['seek']."' or last_name = '". $_GET['seek'] ."' or id_number = '". $_GET['seek'] ."'";
//$sql = "select * from student_database, where first_name = '".$_GET['seek']."' or last_name = '". $_GET['seek'] ."' or id_number = '". $_GET['seek'] ."' or grade = '". $_GET['seek'] ."' or grad_year = '". $_GET['seek'] ."' or student_email = '". $_GET['seek'] ."' or dob = '". $_GET['seek'] ."'";
// $sql = "select * from student_database, where first_name = '".$_POST['seek']."' or last_name = '". $_POST['seek'] ."' or id_number = '". $_POST['seek'] ."' or grade = '". $_POST['seek'] ."' or grad_year = '". $_POST['seek'] ."' or student_email = '". $_POST['seek'] ."' or dob = '". $_POST['seek'] ."'";
$result = mysql_query($sql,$conn)or die (mysql_error());
if (mysql_num_rows($result)==0){
echo "No Match Found";
}else{
while ($row = mysql_fetch_array($result)){
echo "Name: " .$row['first_name']." ".$row["last_name"]."<br>";
echo "Student ID: ".$row['id_number']."<br>";
// echo "Department: ".$row['department_name']."<br>";
// echo "Directorate: ".$row['directorate_name']."<br>";
//echo "Site: ".$row['site_name']."<br>";
//echo "Phone #: ".$row['pb_tel_ext']."<br>";
//echo "Email Address: ".$row['pb_email_address']."<br>";
echo "<br>";
echo "---------------------------------------------------------------------"."<br>";
}
}
mysql_close();
?>
你有一个错误的逗号:
select * from phonebook, where
应该是
select * from phonebook where
除此之外,它应该可以工作——乍一看似乎还可以。删除您的查询并粘贴此查询
$sql = "select * from phonebook
where first_name = '".$_GET['seek']."'
or last_name = '". $_GET['seek'] ."'
or id_number = '". $_GET['seek'] ."'";
我知道,当你开始开发时,你不希望事情变得太复杂,你最不关心的是安全性 但请永远记住
- Facebook一开始是从一个容易破解的学生数据库中盗取的图片,就像你的一样(有趣的事实)
- 从不从未筛选的用户输入构建SQL脚本
- 不要再使用mysql_*适配器了,它正处于弃用过程中
SELECT
fields
FROM
table
WHERE
field1 = 'filter1'
AND
field2 = 'filter2'
表后无逗号
remove”,“phonebook之后并尝试-“select*from phonebook,where”下次出现SQL错误时,打印生成的SQL代码并从您喜爱的MySQL客户端进行调试。PHP代码是不相关的。很高兴提供帮助:)顺便说一句,我真的建议使用PDO而不是mysql.*
函数。它非常容易学习(与MySQL几乎完全相同,甚至可能更容易,不需要所有的服务器麻烦),并为您的应用程序增加了许多好处。好的,我今天将把脚本转换为PDO。我对PHP还是一个新手,对MySQL更是如此,但只要我下定决心,我就会学得很快。
SELECT
fields
FROM
table
WHERE
field1 = 'filter1'
AND
field2 = 'filter2'
<?php
$submit=$_GET['submit'];
$q1= "SELECT * FROM rent_page WHERE (local LIKE '%$submit%')";
$r1 = mysql_query($q1);
$num=mysql_num_rows($r1);
if($num>0){
while($row=mysql_fetch_array($r1)){
//$row=mysql_fetch_array($r);
$_SESSION['nid']=$row['nid'];
?>
<div class="prod_box" >
<div class="top_prod_box" style="float:right; width:100%;"></div>
<div class="center_prod_box" style="float:right; width:100%;">
<div class="product_title" style="padding-top:20px; padding-bottom:2px;"><a href style="text-decoration:none; "="index.php"><b style="font-size:16px; color:red; "><?php echo $row['select_city']; ?></b></a></div>
<div class="product_img" style="padding-top:2px; padding-bottom:2px;>
<a href="index.php?nid=<?php echo $row['nid']; ?>" >
<img width="90%" height="150px" src="uploads/<?php echo $row['image']; ?>" alt="" border="0" />
</a>
</div>
<div class="product_title" style="padding-top:1px; padding-bottom:1px;> <span class="price">Location:<?php echo $row['local']; ?></span></div>
<div class="prod_price" style="padding-top:1px; padding-bottom:1px;> <span class="price">Minimum Price: <?php echo $row['minimum']; ?></span></div>
</div>
<div class="bottom_prod_box" style="padding-top:1px; padding-bottom:1px;><span class="price">Maximum Price: <?php echo $row['maximum']; ?></span></div>
<div class="prod_details_tab" style="padding-top:1px; padding-bottom:1px;><span class="price">Building Floor: <?php echo $row['name_of_floor']; ?></span></div>
<div class="prod_details_tab" style="padding-top:1px; padding-bottom:1px;><span class="price">Posted By. <?php echo $row['opt']; ?></span></div>
</div>
<?php
}
}else{
echo "Sorry invalid product";}
?>