<!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单条件查询,关键字查询的更多相关文章

  1. Nodejs 之Ajax的一个实例(sql单条件查询&并显示在Browser端界面上)

    1.Broswer端的Ajax <!DOCTYPE html> <html> <head lang="en"> <meta charset ...

  2. php多关键字查询

      php单一关键字查询 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 tdansitional//EN" "http: ...

  3. java 关键字查询时的转义操作

    /** * mysql模糊查询时,如果查询关键字本身包含_和%,需要转义 * * @param queryKey 查询关键字 * @return 转义字符 */ private String conv ...

  4. ajax基础语法、ajax做登录、ajax做用户名验证是否可用、ajax做关键字查询动态显示、ajax做用表格显示数据并增加操作列

    AJAX: AJAX 是一种用于创建快速动态网页的技术. 通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新.这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新.   ...

  5. PHP统计字符串里单词查询关键字

    <?function full_count_words($str) {     //返回完整数组,包含字符串里每个单词 $words = str_word_count($str,1);     ...

  6. 使用AJAX做关键字查询:输入框变化自动搜索、无刷新页面;

    使用AJAX做关键字查询要求:1.无刷新页面2.输入框变化自动搜索 <style type="text/css"> .k{ width:150px; height:30 ...

  7. HDU 2222 Keywords Search(查询关键字)

    HDU 2222 Keywords Search(查询关键字) Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/131072 K ...

  8. php 之 数据访问 查询关键字 (0506)

    根据数据库中的car表做一个汽车查询页面:  一.一个关键字查询: 主页面: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transiti ...

  9. Oracle多关键字查询

    因项目需要,在某查询页面的查询字段支持多关键字查询,支持空格隔开查询条件,故实现如下: 使用的原理是:ORACLE中的支持正则表达式的函数REGEXP_LIKE, '|' 指明两项之间的一个选择.例子 ...

随机推荐

  1. android 查看当前正在运行的进程

    转载至 https://github.com/wenmingvs/AndroidProcess 因为Android5.0以上的权限封锁,无法直接获取正在运行的进程,此文总共介绍6中方法获取, 详细介绍 ...

  2. 电脑只有网页打不开,QQ和其他软件都能用

    应该就是浏览器设置代理服务器的问题 1.打开浏览器->找到工具->internet选项->链接->局域网设置 将代理服务器下面勾去掉

  3. xsl-mode属性用法

    本文出自 “熔 岩” 博客,出处http://lavasoft.blog.51cto.com/62575/60517 对某一个元素做多次处理,那么选择<xsl:apply-template元素处 ...

  4. java 随机生成身份证代码

    import java.util.Calendar; import java.util.Collection; import java.util.HashMap; import java.util.I ...

  5. C++-数据库【1】-C++连接MSSQL数据库

    测试环境—— 系统:Win7 64bit 编译器:VC++ 2015 数据库:MSSQL 2008 R2 #include <Windows.h> #include <stdio.h ...

  6. Node.js-中文分词【1】-node-segment

    node-segment是基于盘古分词写的Node.js中文分词模块,鉴于盘古分词给我留下的好印象,我们在Node.js上选择了它 一.安装node-segment npm install -g se ...

  7. ZOJ-3820 Building Fire Stations 题解

    题目大意: 一棵树,在其中找两个点,使得其他点到这两个的距离的较小值的最大值的最小值及其方案. 思路: 首先显然一棵树的直径的中点到其他点的距离的最大值必定比其他点的小. 那么感性思考一下就将一棵树的 ...

  8. Avoiding InvokeRequired

    Just read a good article to do cross-thread calling in an easy and elegant way. It is amazing for it ...

  9. Redis_redis分布式锁-SETNX

    因业务需要使用了redis的SETNX来实现分布式锁. 描述:Redis有一系列的命令,特点是以NX结尾,NX是Not eXists的缩写,如SETNX命令就应该理解为:SET if Not eXis ...

  10. HDU 2689 Sort it (树状数组)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2689 Sort it Problem Description You want to processe ...