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, '|' 指明两项之间的一个选择.例子 ...
随机推荐
- [NHibernate]利用LINQPad查看NHibernate生成SQL语句
上篇文章中我们提到可以通过重写NHibernate的 EmptyInterceptor 拦截器来监控NHibernate发送给数据库的SQL脚本,今天看到有朋友用LINQPad工具来进行NHibern ...
- 恶心的content
getBaseContent getApplicationContent ...
- 一台电脑安装多个版本的jdk
我们平时在做Java开发的时候,有时需要使用多个版本的jdk, 那么一台电脑上需要安装多个JDK了. 那一台电脑上可不可以同时安装多个版本的jdk呢? 答案是可以的! 但使用的时候,只能使用一个,不能 ...
- bind模拟
if (!Function.prototype.bind) { Function.prototype.bind = function(oThis) { if (typeof this !== 'fun ...
- 使用配置文件定义ADO.NET 的连接字符串
最近一直在学习ADO.NET的相关知识,发现要对数据库操作的地方都要先创建一个连接字符串: string constr ="Data Source=(local);Initial Catal ...
- 开启PHP的伪静态
1.检测Apache是否支持mod_rewrite 通过php提供的phpinfo()函数查看环境配置,通过Ctrl+F查找到“Loaded Modules”,其中列出了所有 apache2handl ...
- compositionEnd 和 input 事件(中文输入法问题)
网上用 compositionstart + compositionend + input 解决中文输入法问题的办法 node.addEventListener('compositionstart', ...
- 安装WAMP 及 修改MYSQL用户名 、 密码
1,下载并安装WAMP 2,启动服务后,找到MYSQL--MYSQL console--弹出命令窗口(刚开始没有初始用户名跟密码,可直接回车执行) 3,首先输入 use mysq;l---然后修改用户 ...
- php+ajax..转
php+ajax 登录注册页面 主要是登录注册功能,前端后台验证没有什么,这个大家可以自己加上去,比如过滤啊,正则啊等 还是先放图吧 这是登录及注册界面 点击注册切换到注册界面,点击登录切换到登录界 ...
- Python数据分析
一.安装Anaconda 1.下载:https://www.continuum.io/downloads 2.命令行创建和启动环境 conda create --name py35 python=3. ...