这里的估清,我用在了菜单上,也就是这个菜品当天能不能点餐,这就是估清的功能。

进行估清的菜单,我是写在了数据库中,让数据库这张菜单表进行遍历出想要显示的内容:

一、数据库的结构

在数据库中建立一张菜单表,字段内容有点关联,比如这个类别中的菜品

下面的表就是我建立的表

二、表建立结束后,就是想想这个功能了

(1)用什么方式显示出这个这个功能

(2)显示出来,进行估清时,是不是要对应数据库的修改

一步一步的来,首先是这个估清功能的样式

注意:在编写代码之前,要把将要运用到的所有东西提前调入,比如bootstrap、封装好的数据库的类

1.可以通过一个按钮来进行显示菜单,单击这个按钮进行弹出框,然后显示菜单

<div data-toggle="modal" data-target="#myModal2" style="font-size:20px; font-weight:bold">估清</div>

这是对这个估清添加了弹出模态框效果

2.模态框可以运用bootstrap的模态框

<div class="modal fade" id="myModal2" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true"><div class="modal-dialog"><div class="modal-content"><div class="modal-header"><button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button><h4 class="modal-title" id="myModalLabel">估清餐品</h4></div><div class="modal-body" id="content">//这里就是遍历数据库的菜单内容</div><div class="modal-footer"><button id="tijiao" type="button" class="btn btn-default" data-dismiss="modal">关闭</button></div></div><!-- /.modal-content --></div><!-- /.modal -->
</div>

3.进行遍历数据库,这里的遍历时有条件的

(1)如果它的状态是1的话就是这个菜是不能点餐的,相反则是可以别点餐

(2)因为类别有点多,这里也是可以借助bootstrap的标签页

(3)可以用ajax也可以直接写php,我这里是直接写的php代码

3.1 这是显示类别的,相当于一个标签,点击每一个标签名会显示不同的标签内容

<ul id="myTab" class="nav nav-tabs"><li class="active" style=" font-size:30px" ><a href="#home" data-toggle="tab"> 饭面类</a></li><li style=" font-size:30px"><a href="#ios" data-toggle="tab">特色小吃</a></li><li class="dropdown" style=" font-size:30px"><a href="#" id="myTabDrop1" class="dropdown-toggle"data-toggle="dropdown">酒水饮品 <b class="caret"></b></a><ul class="dropdown-menu" role="menu" aria-labelledby="myTabDrop1" style=" font-size:25px"><li><a href="#jmeter" tabindex="-1" data-toggle="tab">酒水</a></li><li><a href="#ejb" tabindex="-1" data-toggle="tab">饮品</a></li></ul></li>
</ul>

3.2 这个就是遍历数据中的菜品:要调用封装好的类

include("DBDA.php");
$db = new DBDA();

<div class="tab-pane fade in active" id="home"><p id="mian">    <?php$sql = "select * from caidan where fcode =('1101')"; //查询这个类别中的所有菜单$attr = $db->Query($sql);  //执行封装好类中的方法foreach($attr as $v){$v1 = $v[4];  //让菜单中的状态相等$sql1 = "select isok from caidan ";$attr1 = $db->StrQuery($sql1);if($attr1=$v1){           //如果等于那就像是出来,这里的aa1的样式灰色,表示不能点;aa就是绿色表示能点echo "<input type='button' value='$v[2]' class='aa1' biaoshi='lv' code='$v[1]' />";     }else{                                          echo "<input type='button' value='$v[2]' class='aa' biaoshi='hui' code='$v[1]' />";  }                                       }                                     ?></p>
</div>

下面就是显示的按钮的样式了,也就是aa1和aa

.aa{ width:200px; height:50px; font-size:16px; float:left; margin:5px; background-color:#3F6;text-align:center; vertical-align:middle; line-height:50px}.aa1{ width:200px; height:50px; font-size:16px; float:left; margin:5px; background-color:#999;text-align:center; vertical-align:middle; line-height:50px}

3.3 最后的关闭按钮了

<div class="modal-footer"><button id="tijiao" type="button" class="btn btn-default" data-dismiss="modal">关闭</button>
</div>

  

可以看一下从数据库中遍历出来的内容和样式了

4.以上只是遍历出来的,还没有给它添加功能,单一任意一个菜品名称,成灰色,并且改变数据库的状态,使前台也是显示不能点菜;再次单击呈绿色,数据库也是改变状态,使前台可以点餐

在进行遍历时已经加上个事件,叫做biaoshi

"<input type='button' value='$v[2]' class='aa' biaoshi='hui' code='$v[1]' />";

4.1 对这个添加事件就可以

$(".aa").click(function(){var aa=$(this).attr("biaoshi");if(aa=="hui"){$(this).css("background-color","#999");  //是灰色就把背景色变成灰色$(this).attr("biaoshi","lv");}else{$(this).css("background-color","#3F6"); //否则就是绿色$(this).attr("biaoshi","hui");}
})

4.2 这只是进行了单击变色,数据库还是没有修改,下面就是进行修改数据库了

var code = $(this).attr("code");  //遍历数据库时,已经标出code是数据库中的那一列$.ajax({url:"guqing.php",  //处理页面data:{c:code},  //将code传过去type:"POST", //传输方式dataType:"TEXT",  //返回格式success: function(data){  //处理页面成功后执行下面if(data.trim()=="ok"){}}
})

4.3 编写处理页面

<?php
include("DBDA.php");  //调用封装好的类
$db = new DBDA();$code = $_POST["c"]; //接受穿过来的值
$sql=" update caidan set isok=1 where  code='{$code}' ";  //编写语句,如果code和数据库中的一样,那么就把状态改成1
$attr = $db->Query($sql,0);  //执行语句
echo "ok";?>

4.4 这样就把4.2步骤添加到4.1中的灰色部分就好了

4.5  变回原来颜色的那个是一样的做法,不多说直接上完整的代码  

注意:这只是对aa进行了单击事件,也要对aa1进行单击事件,同样的做法而已

//对aa的点击事件$(".aa").click(function(){var aa=$(this).attr("biaoshi");if(aa=="hui"){$(this).css("background-color","#999");$(this).attr("biaoshi","lv");var code = $(this).attr("code");$.ajax({url:"guqing.php",data:{c:code},type:"POST",dataType:"TEXT",success: function(data){if(data.trim()=="ok"){}      }})}else{$(this).css("background-color","#3F6");$(this).attr("biaoshi","hui");var code = $(this).attr("code");$.ajax({url:"guqing1.php",  //处理页面和guqing的处理页面只有状态值的不同      data:{c:code},type:"POST",dataType:"TEXT",success: function(data){if(data.trim()=="ok"){}}})}
})
//对aa1的单击事件
$(".aa1").click(function(){var aa=$(this).attr("biaoshi");if(aa=="hui"){$(this).css("background-color","#999");$(this).attr("biaoshi","lv");var code = $(this).attr("code");$.ajax({url:"guqing.php",data:{c:code},type:"POST",dataType:"TEXT",success: function(data){if(data.trim()=="ok"){}}})}else{$(this).css("background-color","#3F6");$(this).attr("biaoshi","hui");var code = $(this).attr("code");$.ajax({url:"guqing1.php",data:{c:code},type:"POST",dataType:"TEXT",success: function(data){if(data.trim()=="ok"){}}})}
})

到此,就这样这个估清功能就写完了

这样数据库也是可以修改其状态的  

转载于:https://www.cnblogs.com/nuanai/p/6409166.html

有关菜单进行“估清”的功能相关推荐

  1. c语言菜单怎么清空,你好,请教个C语言菜单实现清屏功能。就是用switch里面输入一个数子,就实现部分清屏或者全清屏...

    在标准的C语言中,没有所谓的清屏函数的,特别是部分清屏 C语言它只是一个标准,只有标准的输入/输出函数 而你要的菜单/清屏功能,必须调用系统的函数才能实现(不同系统用户界面设计方式是不同的) 如在wi ...

  2. 生鲜配送行业,接地气的采购入库盘点估清流程

    我一直从事生鲜配送行业的系统信息化建设,服务过三个杭州本地化生鲜配送企业,经过这几年的摸索与思考及实践,总结出以下的采购入库盘点估清流程 现在的生鲜配送企业,一般都是由销定采订单式采购(因为生鲜产品是 ...

  3. python右键弹出菜单编写_python实现应用程序在右键菜单中添加打开方式功能

    最近项目组开发的一个小工具想要在右键菜单中添加打开方式,以有道云笔记为例进行了需求拆解和代码编写 1.需求拆解: 如何实现手动添加右键菜单的打开方式: Step1:打开注册表编辑器,Win+R-> ...

  4. 74ls163是同步清零吗_74LS163是具有同步清零功能的十六进制计数器,要

    74LS163是具有同步清零功能的十六进制计数器,要想构成12进制计数器,采用清零的方法,应该在状态清零? 答:1100 Microsoft has emphasized time and time ...

  5. 时钟表24进制HTML,24进制数字电子钟时计器、译码显示电路 具有自动清零功能

    设计要求 时间以24秒为一个周期,具有自动清零功能. 前言 24进制电子数字钟是实现具有24进制清零功能的电子钟,它主要由脉冲.10进制加法器74LS160.译码器74LS48.共阴极tisim9和P ...

  6. 2019.8.设计菜单,完成简单计算器功能。要求:设计5个菜单项,功能分别为加减乘除。

    1.题目: 设计菜单,完成简单计算器功能.要求:设计5个菜单项,功能分别为加减乘除. 2.代码展示(复制可直接运行) import java.util.Scanner;public class Y20 ...

  7. java实现计算器的退格功能_帮忙看下这个java做的计算器为什么实现不了退格和清零功能,3q...

    已结贴√ 问题点数:5 回复次数:1 帮忙看下这个java做的计算器为什么实现不了退格和清零功能,3q import java.awt.*; import java.awt.event.*; publ ...

  8. java调用cmd清屏_Java | 使用JNA在Java中实现cls(cmd清屏)功能

    前言 本文将通过示例代码讲解如何在Java中通过使用JNA来调用cls命令行清屏功能,代码已同步到GitHub,此外本文不是专门讲解JNA的使用的,如需学习可到GitHub查看官网示例,下面我就开始通 ...

  9. 魔众积分商城系统 v1.3.0 后台菜单快捷搜索,框架功能升级

    魔众积分商城系统提供积分商城,会员积分系统,积分兑换商城,积分系统,积分运营,营销活动工具,积分游戏.API接口对接会员积分系统,简单配置页面即可上线,助力企业会员运营管理. 魔众积分商城系统发布v1 ...

最新文章

  1. 华山论剑之浅谈iOS的生产线 工厂模式
  2. linux仿mac os10,Win10就是不如Mac顺手?几款仿Mac小工具推荐
  3. Java数据结构和算法:图
  4. 【Android】3.12 兴趣点( POI)搜索功能
  5. iOS教程:Core Data数据持久性存储基础教程
  6. DFS:C 小Y的难题(1)
  7. C++ _countf
  8. java 发送16进制数据'_java 16进制数据递增
  9. sql 占比计算_数据库索引的优化及SQL处理过程(建议收藏)
  10. 2020.3二级中选择题文件类型题目全套
  11. 把string时间取出月份_农村集市上现杀活蚌取出来的珍珠,是真的吗?为何价格这么便宜?...
  12. 【转】接口测试面试题
  13. 【气温预测】基于matlab BP神经网络气温预测【含Matlab源码 714期】
  14. 简单计算机面试题库及答案_计算机面试常问问题及答案
  15. 星岚技术 Win10 x64 纯净版 V2021.5【带驱动包】
  16. Java双列集合之Map以及斗地主案列
  17. 36个助你成为专家需要掌握的JavaScript概念
  18. 2021 | 官方NOI系列活动已经出来啦~
  19. 封头名义厚度如何圆整_封头规格
  20. 怎样在latex中插入jpg图片

热门文章

  1. Choosing Symbol Pairs
  2. 用EXCEL记笔记/默写/写日程表等_先利其器
  3. 今天,对科比来讲有个大事件!
  4. 第五章:量化研究专题(第五篇:数据处理专题:去极值、标准化、中性化 )
  5. 在企业中采用多云战略的最佳实践
  6. TCP SACK和DACK(TCP是累积确认)
  7. 实用的wordpress全站搜索替换插件search-and-replace中文版
  8. Lesson 4 An exciting trip 激动人心的旅行
  9. 【机器学习】KNN算法及K值的选取
  10. 告诉你一个朴素的上海(中/食)