用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 简易输出CSV表格文件的方法详解
Jun 20 PHP
使用php将某个目录下面的所有文件罗列出来的方法详解
Jun 21 PHP
php二维数组排序详解
Nov 06 PHP
php去除HTML标签实例
Nov 06 PHP
ThinkPHP模板判断输出Empty标签用法详解
Jun 30 PHP
PHP实现查询两个数组中不同元素的方法
Feb 23 PHP
PHP使用星号隐藏用户名,手机和邮箱的实现方法
Sep 22 PHP
ThinkPHP3.2框架使用addAll()批量插入数据的方法
Mar 16 PHP
PHP面向对象程序设计之构造方法和析构方法详解
Jun 13 PHP
Smarty缓存机制实例详解【三种缓存方式】
Jul 20 PHP
php使用redis的有序集合zset实现延迟队列应用示例
Feb 20 PHP
php使用pthreads v3多线程实现抓取新浪新闻信息操作示例
Feb 21 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使用内置函数file_put_contents写入文件及追加内容的方法
2015/12/07 PHP
php获取服务器操作系统相关信息的方法
2016/10/08 PHP
浅谈php中的循环while、do...while、for、foreach四种循环
2016/11/05 PHP
Laravel使用RabbitMQ的方法示例
2019/06/18 PHP
jquery加载页面的方法(页面加载完成就执行)
2011/06/21 Javascript
js弹出层之1:JQuery.Boxy (二)
2011/10/06 Javascript
node.js中使用socket.io的方法
2014/12/15 Javascript
JavaScript随机生成信用卡卡号的方法
2015/04/07 Javascript
轻松掌握jQuery中wrap()与unwrap()函数的用法
2016/05/24 Javascript
jQuery实现的纵向下拉菜单实例详解【附demo源码下载】
2016/07/09 Javascript
Boostrap栅格系统与自己额外定义的媒体查询的冲突问题
2017/02/19 Javascript
jQuery+ThinkPHP+Ajax实现即时消息提醒功能实例代码
2017/03/21 jQuery
jQuery Validate 无法验证 chosen-select元素的解决方法
2017/05/17 jQuery
jQuery时间戳和日期相互转换操作示例
2018/12/07 jQuery
JS对象和字符串之间互换操作实例分析
2019/02/02 Javascript
js 下拉菜单点击旁边收起实现(踩坑记)
2019/09/29 Javascript
解决vue初始化项目时,一直卡在Project description上的问题
2019/10/31 Javascript
[01:03:41]DOTA2-DPC中国联赛 正赛 Dynasty vs XG BO3 第三场 2月2日
2021/03/11 DOTA
python实现下载整个ftp目录的方法
2017/01/17 Python
Tensorflow分类器项目自定义数据读入的实现
2019/02/05 Python
python3-flask-3将信息写入日志的实操方法
2019/11/12 Python
python循环嵌套的多种使用方法解析
2019/11/29 Python
使用 tf.nn.dynamic_rnn 展开时间维度方式
2020/01/21 Python
Python常用断言函数实例汇总
2020/11/30 Python
CSS3动画之流彩文字效果+图片模糊效果+边框伸展效果实现代码合集
2017/08/18 HTML / CSS
Ratchet 模态框的实现
2020/08/19 HTML / CSS
Ruby如何实现动态方法调用
2012/11/18 面试题
制药工程专业应届生求职信
2013/09/24 职场文书
大学生简历中个人的自我评价
2013/10/06 职场文书
财务工作者先进事迹材料
2014/01/17 职场文书
共产党员公开承诺践诺书
2014/05/28 职场文书
品牌服务方案
2014/06/03 职场文书
学校学习雷锋活动总结
2014/07/03 职场文书
学习“七一”讲话精神体会
2014/07/08 职场文书
办理房产证委托书
2014/09/18 职场文书
教你win10系统中APPCRASH事件问题解决方法
2022/07/15 数码科技