php列表框怎么用,PHP+Mysql+jQuery查询和列表框选择操作实例讲解

这篇文章主要介绍了PHP+Mysql+jQuery查询和列表框选择操作实现过程,需要的朋友可以参考下

本文讲解如何通过ajax查询mysql数据,并将返回的数据显示在待选列表中,再通过选择最终将选项加入到已选区,可以用在许多后台管理系统中。本文列表框的操作依赖jquery插件。

378a8ca7af654896d32fcc7199d6ff4b.png

HTML

说明,HTML内容是一个表单,里面放置有一个查询输入框,和一个列表框,以及相关按钮。

MYSQL数据表结构

CREATE TABLE IF NOT EXISTS `t_mult` (

`id` int(11) NOT NULL auto_increment,

`username` varchar(32) NOT NULL,

`phone` varchar(20) NOT NULL,

PRIMARY KEY (`id`)

) ENGINE=MyISAM DEFAULT CHARSET=utf8;

表t_mult是一张联系人资料表,包括姓名和手机号码字段。

CSS

本例中只加载了Multiselect插件所需的样式文件,其他CSS大家可以自行设计。

JAVASCRIPT

首先需要引用本例所需的两个js文件。

接着我们来调用Multiselect插件。

$("#liOption").multiselect2side({

selectedPosition: 'right',

moveOptions: false,

labelsx: '待选区',

labeldx: '已选区'

});

然后我们来写搜索按钮进行Ajax查询数据的操作。

$("#searchOption").click(function(){

var keys=$("#keys").val();

$.ajax({

type: "POST",

url: "action.php",

data: "title="+keys,

success: function(msg){

if(msg==1){

$("#msg_ser").show().html("没有记录!");

}else{

$("#liOptionms2side__sx").html(msg);

$("#msg_ser").html("");

}

}

});

$("#msg_ser").ajaxSend(function(event, request, settings){

$(this).html("");

});

});

说明,当点击搜索按钮时,进行的是Ajax异步操作,JAVASCRIPT将获取的搜索框的输入值,以POST方式传递给后台程序action.php处理,,处理后,返回不同的结果给JAVASCRIPT,如果返回1,HTML页面会提示“没有记录”,反之,则将结果输出给左边列表框(待选区):liOptionms2side__sx。注意关键的地方到了,为什么列表框不是XHTML离的liOption,而变成了liOptionms2side__sx了呢?这个要从Multiselect插件说起,Multiselect插件其实就是将一个列表框装换成左右两个列表框,已供相关操作,通过查看其插件代码不难发现,左边的列表框名为:liOptionms2side__sx,右边列表框(已选区)名为:liOptionms2side__dx,后面会用到。

PHP

首先来看action.php的处理。

第一步是连接数据库。

$conn=mysql_connect("localhost","root","");

mysql_select_db("demo",$conn);

mysql_query("SET names UTF8");

第二步读取数据,并输出。通过检测搜索框传来的值,构造不同的SQL语句,并将数据返回输出,代码如下:

$keys=trim($_POST['title']);

$keys=mysql_real_escape_string($keys,$conn);

if(!empty($keys)){

$sql="select * from t_mult where username like '%$keys%' or phone='$keys'";

}else{

$sql="select * from t_mult";

}

$query=mysql_query($sql);

$count=mysql_num_rows($query);

if($count>0){

while($row=mysql_fetch_array($query)){

$str.="".$row['username']."-".$row['phone']."";

}

echo $str;

}else{

echo "1";

}

最后还有一个提交操作,后台post.php程序来获取最终提交的项的值。

$selID=$_POST['liOptionms2side__dx'];

if(!empty($selID)){

$str=implode(",",$selID);

echo $str;

}else{

echo "没有选择任何项目!";

}

注意,我们获取的是右边列表框liOptionms2side__dx的值,而不是liOption的值。

一个查询、操作的例子实现了,但是还有一点点瑕疵,在待选区往已选区添加项目时,如何判断控制已经添加过的项目不能重复添加,这个就留给大家思考吧,试一试有什么好的解决方式。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/385845.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Java未来路在何方?图文详解!

Spring Security观后感——手绘思维脑(供参考) Spring Security手绘思维脑图 手绘的思维导图,是我自己根据自身的情况读完这套阿里出品的Spring Security王者晋级文档之后所绘的,相当于是一个知识的总结与梳理,我将其分为***“核心组件”与“…

matlab怎让3d旋转,如何在MATLAB中平滑旋转3D绘图?

我会说这是你正在绘制的大量积分导致经济放缓.一个选项是缩减采样..也可以使用较低级别的功能进行绘制(检查this related post以获得plot3 / scatter3 / line性能的比较).考虑以下针对速度优化的动画:[X Y Z] sphere(64);X X(:); Y Y(:); Z Z(:);%# set-up figu…

Java未来路在何方?挑战大厂重燃激情!

字节跳动一面: 自我介绍,主要讲讲做了什么和擅长什么看你项目做Spring比较多, 问一下Spring相关的东西, IoC是什么概念?Bean的默认作用范围是什么?其他的作用范围?索引是什么概念有什么作用? MySQL里主要有哪些索弓|结构?哈希索弓和B树索引比较?平常用线程主…

php如何修改文件名,php修改文件名的实现方法_后端开发

c是什么意思_后端开发C是C语言的继承,它既可以进行C语言的过程化程序设计,又可以进行以抽象数据类型为特点的基于对象的程序设计,还可以进行以继承和多态为特点的面向对象的程序设计。php修改文件名的实现方法在php中可以使用rename函数修改文…

Java架构师必备框架技能核心笔记,工作感悟

01 kafka入门 1.1 什么是kafka 1.2 kafka中的基本概念 1.2.1 消息和批次 1.2.2 主题和分区 1.2.3 生产者和消费者、偏移量、消费者群组 1.2.4 Broker和集群 1.2.5 保留消息 02 为什么选择kafka 2.1 优点 2.2 常见场景 2.2.1 活动跟踪 2.2.2 传递消息 2.2.3 收集指标和日志 2.2.…

java将某个数按比例分配应用题,按比例分配应用题

按比例分配(一)1、甲乙两数的和是72,甲乙两数的比是4:5,甲、乙两数各是多少?。2、一个等腰三角形,顶角和一个底角的比是1:4,这个三角形两个底角各是多少。3、六(1)班有女生24人,女生和男生人数的比是4:5&am…

Java架构师必备框架技能核心笔记,附相关架构及资料

技术焦虑 现在的技术圈子很火热,任何技术点,任何知识,只要你肯搜索,都能找到资料。但是现在技术圈确实有一个不好的地方,就是贩卖焦虑。这种贩卖焦虑的点并不在于形式,而是一种普遍的心态。特别是对于那种…

php智能裁剪黑边,图片裁剪去除黑边

前言从浏览器保存的图片有透明度,但是python打开其透明通道是黑色的,因此我利用python的OpenCV模块去除了其上下左右的黑边。效果展示计算机中效果python打开效果python裁剪后效果代码import cv2def change_size(read_file):image cv2.imread(read_file…

Java架构师教你如何突破瓶颈,持续更新中

1、上下文切换 上下文定义 cpu发生进程或者线程切换时,所依赖的数据集合,比如一个函数有外部变量,函数运行时,必须获取外部变量,这些变量值的集合就是上下文。 引发问题 对于CPU密集型任务,多线程处理会…

matlab dwt 多层分解,利用matlab对图片进行多层小波分解 会的加QQ511607771 加过作图之后积分加倍送...

利用matlab对图片进行多层小波分解 会的加QQ511607771 加过作图之后积分加倍送mip版 关注:96 答案:2 悬赏:0解决时间 2021-01-23 13:02已解决2021-01-23 04:23(Haar小波、Daubechies小波、Coiflets小波和Symlets小波) 三层分解下的去噪图可以直接发信息15836900853 立马上线…

Java校招面试经验汇总,最终入职阿里

一面 自我介绍项目中的监控:那个监控指标常见的有哪些?微服务涉及到的技术以及需要注意的问题有哪些?注册中心你了解了哪些?consul 的可靠性你了解吗?consul 的机制你有没有具体深入过?有没有和其他的注册…

matlab确定位置,Hurlin 的PSTR模型包,怎样确定位置参数个数

http://www.runmycode.org/companion/view/2564我用的是这个包1.怎样确定位置参数个数?2. 门限变量也是解释变量时,结果中(结果如下)的warning 是什么意思?3. 这个包中是否能够把门限变量也作为解释变量?我跑出的结果是这样的&…

Java校招面试经验汇总,看完直接跪服

美团技术一面20分钟 晚7点,因为想到下周一才面试,我刚准备出去打个羽毛球,北京的电话就来了。面试官各种抱歉,说开会拖延了。 1、自我介绍 说了很多遍了,很流畅捡重点介绍完。 2、问我数据结构算法好不好 挺好的&…

nginx alias php 404,Nginx配置静态服务器以及404问题解决,root和alias的区别

最近在使用Nginx配置一个图片静态服务器来通过http请求访问图片,在配置的时候,发现遇到访问有404的问题,结果发现是在配置路径的时候,和路径属性是root还是alias的有关。nginx配置文件server {listen 88;server_name localhost;#c…

Java框架体系架构的知识,轻松拿下offer

算法 ⼏道常⻅的字符串算法题总结最⻓公共前缀回⽂串两数相加翻转链表链表中倒数第k个节点删除链表的倒数第N个节点合并两个排序的链表剑指offer部分编程题跳台阶问题变态跳台阶问题⼆维数组查找替换空格题⽬描述:数值的整数次⽅调整数组顺序使奇数位于偶数前⾯链表…

php函数网,php函数

时间相关1.time(),可获得当前时间的时间戳.2.strtotime(),可将一个文本类型的datetime转化成时间戳.3.格式输出:比如输出时间为01/31/2011date(m/d/Y,时间戳).再如: date ( Y-m-d H:i:s , 时间戳 ); 2011-01-31 04:20:59.输入输出相关echo sprintf("%.2f",0.24236); …

java开发学生管理系统,看这篇足矣了!

20道常见MySQL数据库面试题解析 事务四大特性(ACID)原子性、一致性、隔离性、持久性? 事务的并发?事务隔离级别,每个级别会引发什么问题,MySQL默认是哪个级别? MySQL常见的三种存储引擎&#…

oracle频,Oracle动作频频 Java或浴火重生

【51CTO观察】自从今年(2010)的1月27日Oracle正式宣布完成并购Sun以来,Java的前途和命运一直是众多Java开发者的所关心的话题。4月9日,被称为Java之父的James Gosling又在个人博客上宣布离开Oracle,这一事件更为Java的前景增加了一层迷雾。但…

java开发实战经典第二版百度网盘,灵魂拷问

一面(一个小时左右) 算法:写冒泡排序,问如何优化,简单讲了快排和堆排序的原理数据库:解释左连接数据库第一第二第三范式,数据库死锁linux:怎么查看内存;怎么查看进程&am…

php用户之间的数据,什么是位于用户与操作系统之间的一层数据管理软件

什么是位于用户与操作系统之间的一层数据管理软件?DBMS是位于用户与操作系统之间的一层数据管理软件。数据库管理系统(Database Management System)是一种操纵和管理数据库的大型软件,用于建立、使用和维护数据库,简称DBMS。它对数据库进行统…