重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
有可能是 IE 的问题,有时候 IE 不给加引号,变成了
恩平ssl适用于网站、小程序/APP、API接口等需要进行数据传输应用场景,ssl证书未来市场广阔!成为创新互联建站的ssl证书销售渠道,可以享受市场价格4-6折优惠!如果有意向欢迎电话联系或者加微信:028-86922220(备注:SSL证书合作)期待与您的合作!
option value=aa bb cc selectedaa bb cc/option
还有可能就是你的 aa bb cc 里面有引号,变成了
option value="aa" bb cc" selectedaa bb cc/option
所以你取到的是 aa。
如果引号没丢,取到的值应该不会错。
最好不要这样做,你这相当于是制造了$_keywords的长度那么多次数据查询,服务器端表示压力很大。最好是直接传入原含空格的字符串,用一次SQL查询来搞定其中的逻辑。
新手建议不要使用多词搜索,可以有针对的进行搜索,例如针对标题、序号等等。给你举一个成绩搜索的例子。
form
学号:input type="text" name="xh"input type="submit" value="开始搜索" name="anniu"br
姓名:input type="text" name="xm"input type="submit" value="开始搜索" name="anniu"br
/form
?php
echo "要搜索的是:u".$_REQUEST["xh"]."/ubr";
echo "要搜索的是:u".$_REQUEST["xm"]."/ubr";
echo "要搜索的是:u".$_REQUEST["km"]."/ubr";
echo "学生成绩查询br";
if(mysql_connect("127.0.0.1","root","")){
echo "连接数据库成功br";
}
if(mysql_select_db("book")){
echo "数据库打开正确br";
}
mysql_query("set names utf8");
$xm = isset($_GET["xm"]) ? $_GET["xm"]: "";
$xm = isset($_GET["xh"]) ? $_GET["xh"]: "";
echo "要搜索的是:u".$_REQUEST["xm"]."/ubr";
echo "要搜索的是:u".$_REQUEST["km"]."/ubr";
echo "学生成绩查询br";
if(mysql_connect("127.0.0.1","root","")){
echo "连接数据库成功br";
}
if(mysql_select_db("book")){
echo "数据库打开正确br";
}
mysql_query("set names utf8");
$xm = isset($_GET["xm"]) ? $_GET["xm"]: "";
$xm = isset($_GET["xh"]) ? $_GET["xh"]: "";
if($xm =="" $xh==""){
echo"请输入搜索条件";
exit();
}else if($xm !==""){
$sql = "SELECT `成绩`.`学号`,`名单`.`姓名`,`成绩`.`学科`,`成绩`.`分数` FROM `成绩`,`名单` where 名单.学号=成绩.学号 and姓名=`".$xm."`";
}else if($xh !==""){
$sql = "SELECT `成绩`.`学号`,`名单`.`姓名`,`成绩`.`学科`,`成绩`.`分数` FROM `成绩`,`名单` where 名单.学号=成绩.学号 and姓名=`".$xm."`";
if(isset($_GET["xh"])$_GET["xh"]!=""){
$sql=("SELECT * FROM `成绩表`,`名单表` where `名单表`.学号 = `成绩表`.学号 and `名单表`.学号='".$_GET["xh"]."' LIMIT 0 , 30");
}else if(isset($_GET["xm"])$_GET["xm"]!=""){
$sql=("SELECT * FROM `成绩表`,`名单表` where `名单表`.学号 = `成绩表`.学号 and `名单表`.姓名='".$_GET["xm"]."' LIMIT 0 , 30");
}else{
echo"请输入查询条件br";
exit();
}
if($res = mysql_query ("$sql")){
echo "sql语句执行完毕br";
}else {
echo "sql语句font color=brown执行失败/fontbr";
}
//显示数据
echo "table border=1";
echo "trtd"." 学号"."/td"."td"." 学科"."/td"."td"." 成绩"."/tdtr";
while ($data=mysql_fetch_array($res)){
echo "trtd".$data["学号"]."/td"."td".$data["学科"]."/td"."td style='color:green'".$data["成绩"]."/td/tr";
}
echo "/table";
?
最好是做一下筛选,将含空格的两个关键字,分开处理
?php
$_keywords = $_GET['q'];
if (strrpos($_keywords," ")) {
$_keywords = explode(" ", $_keywords);
}
// 将分割好的数组遍历成你的SQL语句就可以了
?
这个很简单,用' '就可以了就是单引号中间空一格来表示。
如查询有空格的数据:
SELECT tg_id FROM tg_user WHERE tg_username=' '