用php+ajax新建流程(请假、进货、出货等)


Posted in PHP onJune 11, 2017

 对管理者来说,电脑操作的请假流程要比人工请假流程的效率高出很多,那么如何新建这个流程呢?

首先:需要明确需要操作哪些流程?

其次:每一个流程需要那些人员来执行?

最后:执行该流程人员的顺序是什么?

 第一步:需要三张表,分别是:user表;liucheng表;liuchengjiedian表(后两张还未添加内容)

用php+ajax新建流程(请假、进货、出货等)

第二步:将users表中的内容用下拉列表读出:

<div id="top">
<p>请选择节点人员:</p>
<select id="user">
<?php
require "../DB.class.php";
$db = new DB();
$sql = "select * from users";
$arr = $db->query($sql);
foreach ($arr as $v){
 echo "<option value='{$v[0]}'>{$v[2]}</option>";
}
?>
</select>
<input type="button" value="确定添加"/>
</div>

实现效果:

用php+ajax新建流程(请假、进货、出货等)

第三步:点击“确定添加”,将选的人员添加到session中

(1)先将jquery包引入

<script src="../jquery-1.11.2.min.js"></script>

(2)ajax代码

<script type="text/javascript">
 //用session 存取选择的值
 $("#add").click(function(){
   var uid = $("#user").val();
   //  alert(uid);
   $.ajax({
    url:"add-cl.php",
    data:{uid:uid},
    type:"POST",
    dataType:"TEXT",
    success:function(data){
     window.location.href="main.php" rel="external nofollow" rel="external nofollow" ;
    }
   });  
 })
</script>

(3)add-cl.php页面

<?php
 //开启session
 session_start();
 //取值
 $uid=$_POST["uid"];
 //如果session为空,造一个数组,将取到的值添加进去
 if(empty($_SESSION["jiedian"])){
  $arr = array($uid);
  $_SESSION["jiedian"] = $arr;
 }
 //如果不为空,将取到的值追加进去
 else
 {
  $arr = $_SESSION["jiedian"];
  $arr[]=$uid;
  $_SESSION["jiedian"] = $arr;
 }
?>

第四步:将选中的人员列出来

(1)先判断是否取到session的值

<?php
    session_start(); 
    if(empty($_SESSION["jiedian"])){
      echo "尚未选择节点人员!";
    }

用php+ajax新建流程(请假、进货、出货等)

(2)取到session 后

else
    {
     $arr = $_SESSION["jiedian"];
     foreach($arr as $k=>$v)
     {
      $sql = "select name from users where uid='{$v}'";
      $name = $db->strquery($sql);
      echo "<div>{$k}--{$name}--<input type ='button' value='移除' class='yichu' code='{$k}'> <div>";
     }     
    }    
   ?>

 用php+ajax新建流程(请假、进货、出货等)

(3)给“移除”按钮添加点击事件

ajax页面:

$(".yichu").click(function(){
  var code = $(this).attr("code");
  $.ajax({
    url:"yichu-cl.php",
    data:{code:code},
    type:"POST",
    dataType:"TEXT",
    success:function(data){
     window.location.href="main.php" rel="external nofollow" rel="external nofollow" ;
    }
   });  
 })

yichu-cl.php页面:

<?php
session_start();
$code = $_POST["code"];
$arr = $_SESSION["jiedian"];
//从数组中删除code这一项
unset($arr[$code]);
//将索引重新排列
$arr = array_values($arr);
$_SESSION["jiedian"] = $arr;
?>

 点击移除王五:则会剩余张三和周六,且code重新排列

用php+ajax新建流程(请假、进货、出货等)

最后一步:添加保存按钮,将数据添加到数据库 

注意:在此之前所有的数据都是存在于session中

(1)添加流程名称输入框和保存按钮

<div id="btm">
    请输入流程名称:
   <input type="text" class="name" />
   <input type="button" value="保存" class="baocun" />
   </div>

(2)点击保存按钮,将所有信息存入数据库

ajax代码

$(".baocun").click(function(){
  var name = $(".name").val();
//  alert(name);
  $.ajax({
    url:"baocun-cl.php",
    data:{name:name},
    type:"POST",
    dataType:"TEXT",
    success:function(data){
     alert("保存成功!");
    }
   }); 
 })

baocun-cl.php页面

<?php
session_start();
require "../DB.class.php";
$db = new DB();
//将数据写进liucheng表
$name = $_POST["name"];
$code=time();//用时间戳来生成code
$sql = "insert into liucheng values('{$code}','{$name}')";
$db->query($sql,0);
//将数据写入liucehngjiedian表
$arr = $_SESSION["jiedian"];
foreach($arr as $k=>$v)
{
 $sql = "insert into liuchengjiedian values ('','{$code}','{$v}','{$k}')";
 $db->query($sql,0);
}
?>

实现效果以及写入数据库的数据:

用php+ajax新建流程(请假、进货、出货等)

        用php+ajax新建流程(请假、进货、出货等)

到这一步就能实现整个的刘新建流程步骤了,后期可以将界面再美化一点 ~~~~

总结:每一步的处理页面都比较重要;sessoin存取数据;unsettle()移除数组;array_values()将数组重新排列等~~~

PHP 相关文章推荐
PHP新手上路(三)
Oct 09 PHP
php printf输出格式使用说明
Dec 05 PHP
基于HBase Thrift接口的一些使用问题及相关注意事项的详解
Jun 03 PHP
关于使用key/value数据库redis和TTSERVER的心得体会
Jun 28 PHP
php中url传递中文字符,特殊危险字符的解决方法
Aug 17 PHP
使用php显示搜索引擎来的关键词
Feb 13 PHP
php统计时间和内存使用情况示例分享
Mar 13 PHP
初识php MVC
Sep 10 PHP
基于GD2图形库的PHP生成图片缩略图类代码分享
Feb 08 PHP
php实现修改新闻时删除图片的方法
May 12 PHP
php去掉文件前几行的方法
Jul 29 PHP
PHP const定义常量及global定义全局常量实例解析
May 28 PHP
详解PHP函数 strip_tags 处理字符串缺陷bug
Jun 11 #PHP
php模仿qq空间或朋友圈发布动态、评论动态、回复评论、删除动态或评论的功能(中)
Jun 11 #PHP
PHP中error_reporting函数用法详细介绍
Jun 11 #PHP
详解PHP处理字符串类似indexof的方法函数
Jun 11 #PHP
PHP获取文件扩展名的方法实例总结
Jun 10 #PHP
PHP获取数组中单列值的方法
Jun 10 #PHP
PHP实现将多个文件中的内容合并为新文件的方法示例
Jun 10 #PHP
You might like
PHP的new static和new self的区别与使用
2019/11/27 PHP
添加到收藏夹代码(兼容几乎所有的浏览器)
2007/01/09 Javascript
javascript js cookie的存储,获取和删除
2007/12/29 Javascript
JavaScript 学习笔记(五)
2009/12/31 Javascript
jQuery Lightbox 图片展示插件使用说明
2010/04/25 Javascript
javascript 得到文件后缀名的思路及实现
2020/05/09 Javascript
网页前端优化之滚动延时加载图片示例
2013/07/13 Javascript
浅谈javascript中的instanceof和typeof
2015/02/27 Javascript
JavaScript调用传递变量参数的相关问题及解决办法
2015/11/01 Javascript
jQuery EasyUI菜单与按钮详解
2016/07/13 Javascript
浅谈JavaScript事件绑定的常用方法及其优缺点分析
2016/11/01 Javascript
Bootstrap Img 图片样式(推荐)
2016/12/13 Javascript
详解jQuery的表单验证插件--Validation
2016/12/21 Javascript
JS实现留言板功能
2017/06/17 Javascript
JavaScript之创意时钟项目(实例讲解)
2017/10/23 Javascript
微信小程序日历插件代码实例
2019/12/04 Javascript
微信小程序实现手指拖动选项排序
2020/04/22 Javascript
[02:36]DOTA2英雄基础教程 一击致命幻影刺客
2013/12/06 DOTA
[02:39]DOTA2英雄基础教程 天怒法师
2013/11/29 DOTA
python实现将文本转换成语音的方法
2015/05/28 Python
手把手教你python实现SVM算法
2017/12/27 Python
python读取excel指定列数据并写入到新的excel方法
2018/07/10 Python
Django处理Ajax发送的Get请求代码详解
2019/07/29 Python
找Python安装目录,设置环境路径以及在命令行运行python脚本实例
2020/03/09 Python
Python pandas对excel的操作实现示例
2020/07/21 Python
pycharm2020.2 配置使用的方法详解
2020/09/16 Python
python pygame 愤怒的小鸟游戏示例代码
2021/02/25 Python
CSS3中box-shadow的用法介绍
2015/07/15 HTML / CSS
台湾最大网路书店:博客来
2018/03/18 全球购物
金士达面试非笔试
2012/03/14 面试题
无房证明范本
2014/09/17 职场文书
财务务虚会发言材料
2014/10/20 职场文书
财务稽核岗位职责
2015/04/13 职场文书
在CSS中映射鼠标位置并实现通过鼠标移动控制页面元素效果(实例代码)
2021/04/22 HTML / CSS
Django实现翻页的示例代码
2021/05/24 Python
python中的装饰器该如何使用
2021/06/18 Python