php单条件查询,关键字查询
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
</head> <body>
<h1>查询汽车页面</h1>
<!--根据一个关键字来查到所有的结果-->
<div>请输入名称:
<input type="text" name="name" /><!--输入框-->
<input type="submit" value="查询" /><!--查询按钮-->
</div>
<dr> <table width="100%" border="1" cellpadding="0" cellspacing="0">
<tr>
<td>代号</td>
<td>名称</td>
<td>系列</td>
<td>时间</td>
<td>油耗</td>
<td>功率</td>
</tr>
<!-- 嵌入PHP读数据库
第一步-->
<?php
//造链接对象
$db = new MySQLi("localhost","root","511108","text");
//写SQL语句
$sql = "select * from car";
//执行
$result = $db->query($sql);
//读取数据
$attr = $result->fetch_all();//返回的值用$attr存,得个二维数组,用foreach循环
//foreach循环便利显示
foreach($attr as $v)
{
echo "<tr>
<td>{$v[0]}</td>
<td>{$v[1]}</td>
<td>{$v[2]}</td>
<td>{$v[3]}</td>
<td>{$v[4]}</td>
<td>{$v[5]}</td>
</tr>";
} ?> </table> </body>
</html>
下图是效果图

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
</head> <body>
<h1>查询汽车页面</h1> <?php
//造链接对象。取出用户传的值
$db = new MySQLi("localhost","root","511108","text");
//1先定个$name = "";变量
//$name = $_POST["name"];//取name的值
$name = "";
if(!empty($_POST["name"]))//取name //加上一个叹号!如果name里面为非空就近下面
{
$name = $_POST["name"];
}
$tj = " name like'%{$name}%'";//如果第一次查询$name是空的,就默认表里所有数据,如果$name里面有值比如宝马就会把所有带有宝马的找出来 ?> <form action="chaxunqiche.php" method="post"><!--指向当前页面并且用post方式传一个值-->
<!--根据一个关键字来查到所有的结果-->
<div>请输入名称:
<input type="text" name="name" /><!--输入框.表单元素文本框-->
<input type="submit" value="查询" /><!--查询按钮-->
</div>
<dr> <table width="100%" border="1" cellpadding="0" cellspacing="0">
<tr>
<td>代号</td>
<td>名称</td>
<td>系列</td>
<td>时间</td>
<td>油耗</td>
<td>功率</td>
</tr>
<!-- 嵌入PHP读数据库
第一步-->
<?php
//造链接对象
//$db = new MySQLi("localhost","root","511108","text");移到上面了是一样的
//写SQL语句
$sql = "select * from car where {$tj}";//拼成一个完整的SQL语句
echo $sql;//输出下SQL语句
//执行
$result = $db->query($sql);
//读取数据
$attr = $result->fetch_all();//返回的值用$attr存,得个二维数组,用foreach循环
//foreach循环便利显示
foreach($attr as $v)
{
echo "<tr>
<td>{$v[0]}</td>
<td>{$v[1]}</td>
<td>{$v[2]}</td>
<td>{$v[3]}</td>
<td>{$v[4]}</td>
<td>{$v[5]}</td>
</tr>";
} ?> </table> </body>
</html>
下图要查询的数据,因为没有传过来的值所以$name是空字符串,拼接%%没有
其实就是输出的select * from car where name like'%%'这句话
空的就返回全部

查询里:输入奥迪如下图

以上是单条件查询。有缺陷
让关键字奥迪变色
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
</head> <body>
<h1>查询汽车页面</h1> <?php
//造链接对象。取出用户传的值
$db = new MySQLi("localhost","root","511108","text");
//1先定个$name = "";变量
//$name = $_POST["name"];//取name的值
$tj = " 1=1 ";//条件默认恒成立,在去下面判断下,如果传值就进if //暂时不用他换前面的$name = "";
$name = "";//把他定义在这仅仅是去给他改值,这样这个页面都能访问到 if(!empty($_POST["name"]))//取name //加上一个叹号!如果name里面为非空就近下面
{
$name = $_POST["name"];//把这个变量定义在哪个花狐号{}里面他就在哪里起作用,出去就找不到,不能用了
$tj = " name like '%{$name}%' ";
}
$tj = " name like'%{$name}%'";//如果第一次查询$name是空的,就默认表里所有数据,如果$name里面有值比如宝马就会把所有带有宝马的找出来 ?> <form action="chaxunqiche.php" method="post"><!--指向当前页面并且用post方式传一个值-->
<!--根据一个关键字来查到所有的结果-->
<div>请输入名称:
<input type="text" name="name" /><!--输入框.表单元素文本框-->
<input type="submit" value="查询" /><!--查询按钮-->
</div>
<dr> <table width="100%" border="1" cellpadding="0" cellspacing="0">
<tr>
<td>代号</td>
<td>名称</td>
<td>系列</td>
<td>时间</td>
<td>油耗</td>
<td>功率</td>
</tr>
<!-- 嵌入PHP读数据库
第一步-->
<?php
//造链接对象
//$db = new MySQLi("localhost","root","511108","text");移到上面了是一样的
//写SQL语句
$sql = "select * from car where {$tj}";//拼成一个完整的SQL语句
//echo $sql;//输出下SQL语句
//执行
$result = $db->query($sql);
//读取数据
$attr = $result->fetch_all();//返回的值用$attr存,得个二维数组,用foreach循环
//foreach循环便利显示
foreach($attr as $v)//$attr便利下取出每个小数据$v
{
$v[1];//就是汽车名称,将来要显示的
//str_replace相当于查找替换。要查找的是关键字$name就是<span style='color:red'>{$name}</span>颜色替换的是$v[1]
//有2种方式让关键字变色 ,1种,$str = str_replace($name,"<span style='color:red'>{$name}</span>",$v[1]);//替换字符串,需要3个参数 之后把它交给变量$str = 第2种方式<mark></mark>特殊处理
$str = str_replace($name,"<mark>{$name}</mark>",$v[1]);
echo "<tr>
<td>{$v[0]}</td>
<td>{$str}</td>
<td>{$v[2]}</td>
<td>{$v[3]}</td>
<td>{$v[4]}</td>
<td>{$v[5]}</td>
</tr>";
} ?> </table> </body>
</html>

php单条件查询,关键字查询的更多相关文章
- Nodejs 之Ajax的一个实例(sql单条件查询&并显示在Browser端界面上)
1.Broswer端的Ajax <!DOCTYPE html> <html> <head lang="en"> <meta charset ...
- php多关键字查询
php单一关键字查询 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 tdansitional//EN" "http: ...
- java 关键字查询时的转义操作
/** * mysql模糊查询时,如果查询关键字本身包含_和%,需要转义 * * @param queryKey 查询关键字 * @return 转义字符 */ private String conv ...
- ajax基础语法、ajax做登录、ajax做用户名验证是否可用、ajax做关键字查询动态显示、ajax做用表格显示数据并增加操作列
AJAX: AJAX 是一种用于创建快速动态网页的技术. 通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新.这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新. ...
- PHP统计字符串里单词查询关键字
<?function full_count_words($str) { //返回完整数组,包含字符串里每个单词 $words = str_word_count($str,1); ...
- 使用AJAX做关键字查询:输入框变化自动搜索、无刷新页面;
使用AJAX做关键字查询要求:1.无刷新页面2.输入框变化自动搜索 <style type="text/css"> .k{ width:150px; height:30 ...
- HDU 2222 Keywords Search(查询关键字)
HDU 2222 Keywords Search(查询关键字) Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/131072 K ...
- php 之 数据访问 查询关键字 (0506)
根据数据库中的car表做一个汽车查询页面: 一.一个关键字查询: 主页面: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transiti ...
- Oracle多关键字查询
因项目需要,在某查询页面的查询字段支持多关键字查询,支持空格隔开查询条件,故实现如下: 使用的原理是:ORACLE中的支持正则表达式的函数REGEXP_LIKE, '|' 指明两项之间的一个选择.例子 ...
随机推荐
- hellocharts包的使用心得
首先将jar包导入Libs里面然后add进入于activity中调用 xml中加入布局 <lecho.lib.hellocharts.view.LineChartView android:id= ...
- java微信公众号开发----搭建ngrok环境
下载ngrok,一个能够在公网安全访问内网Web主机的工具 下载地址:http://download.csdn.net/download/u014252425/9389847,亲测可用 下载完成后,进 ...
- 推荐Linux管理员不可不知十大PHP安全要点 - SCutePHP
PHP是使用最广泛的脚本编程语言之一.市场份额颇能说明其主导地位.PHP 7已推出,这个事实让这种编程语言对当前的开发人员来说更具吸引力.尽管出现了一些变化,但是许多开发人员对PHP的未来持怀疑态度. ...
- mac 安装brew
安装了xcode ,直接执行以下代码 ruby -e "$(curl -fsSL --insecure https://raw.githubusercontent.com/Homebrew/ ...
- Android SDK Manager 更新代理配置
转自:http://www.cnblogs.com/tao560532/p/4483067.html 出现问题: 消除SDK更新时,有可能会出现这样的错误:Download interrupted: ...
- dom4j解析示例
收藏信息.xml <?xml version="1.0" encoding="GB2312" standalone="no"?> ...
- PHP通过加锁实现并发情况下抢码实现
需求:抢码功能 要求: 1.特定时间段才开放抢码: 2.每个时间段放开的码是有限的: 3.每个码不允许重复: 实现: 1.在不考虑并发的情况下实现: function get_code($len){ ...
- mysql中生产表格多列统计问题
for Example: select date_format(date,'%Y-%m-%d') as day, count(case when xinghao='a' then 1 end) as ...
- Win8.1开机黑屏一段时间才能登录
最近发现开机后有一段时间黑屏过后才能进人登录界面,并且时间越来越长,网上查询了很多方法都没有效果,只能自己找了. 网上有一种方法提到用msconfig诊断判断或者安全启动来查看是否有黑屏,于是试了一下 ...
- ubuntu下出现的问题-控制台更新源失败
Ubuntu下控制台输入sudo apt-get update之后出现的问题:E: Could not get lock /var/lib/apt/lists/lock - open (11: Res ...