码迷,mamicode.com
首页 > Web开发 > 详细

php流程控制(新建流程)

时间:2017-05-25 23:24:56      阅读:261      评论:0      收藏:0      [点我收藏+]

标签:效果图   处理   use   等等   rip   定义   ajax   数据库   ref   

流程控制,又是一个广泛应用于办公自动化等内部自定义流程及审核的功能。比如请假流程啊,申请办公用品经费,报销申请啊,等等,需要层层审批通过才能完成的(按规章办事,最好别越级,你说是吧)

不习惯一篇博客太长,看不过来,这篇我们先实现流程的新建

先看看效果图

技术分享

1.有个下拉选择用户,可以依次添加到流程的节点位置,

2.下方显示流程的每个节点

3.填写流程名称,点击保存即可完成流程的新建

数据库中需要三张表,1.用户表2.流程表 3.流程节点表

技术分享技术分享技术分享

 

 选择用户和添加节点按钮

<div>
请选择用户:
        <select id="sel">    
        <?php
            session_start();
            require "../DataBase.class.php";
            $db=new DataBase();
            $sql="select * from users";
            $arr=$db->Query($sql);
            foreach($arr as $v)
            {
                echo "<option>{$v[2]}</option>";
                }
        
        ?>

        </select>
<input type="button" id="add"  value="添加至流程节点"/>

</div><br />
<div>

 

 为按钮添加事件

 1 $("#add").click(function (){
 2     var uid=$("#sel").val();
 3     $.ajax({
 4             url:"addjd.php",
 5             data:{uid:uid},
 6             type:"POST",
 7             dataType:"TEXT",
 8             success: function(data){
 9                 
10                 
11                 window.location.href="newbuild.php";
12                 }
13         
14         
15         
16         })
17 });

处理页面addjd.php

 1 <?php
 2 session_start();
 3 $uid=$_POST["uid"];
 4 if(empty($_SESSION["uid"]))
 5 {
 6     $arr=array($uid);
 7     $_SESSION["uid"]=$arr;
 8     }
 9 else{
10     
11     $arr=$_SESSION["uid"];
12     $arr[]=$uid;
13     $_SESSION["uid"]=$arr;
14     
15     }
16 
17 ?>

技术分享

 

加载节点信息

<div>
<?php
if(empty($_SESSION["uid"]))
{
    echo "你还没有添加任何节点";
    }
else
{
    $arr2=$_SESSION["uid"];
    foreach($arr2 as $k=>$v)
    {
        $sql2="select name from users where uid=‘{$v}‘";
        $name=$db->Query($sql2);
        echo "<div>{$k}----{$v}<input type=‘button‘ value=‘删除‘ sy=‘{$k}‘ class=‘yichu‘/></div>";
        
        }
 
    }

?>
</div>

 技术分享

 

 删除的触发事件

 

 

 1 $(".yichu").click(function (){
 2             var sy=$(this).attr("sy");
 3             $.ajax({
 4                     url:"removejd.php",
 5                     data:{sy:sy},
 6                     type:"POST",
 7                     dataType:"TEXT",
 8                     success: function(data){
 9                         window.location.href="newbuild.php";
10                         
11                         
12                         }
13                     
14                 
15                 
16                 })
17     
18     
19     
20     
21     });

移除的处理页面

<?php
session_start();
$sy=$_POST["sy"];
$arr=$_SESSION["uid"];
unset($arr[$sy]);        //移除数组元素
$arr=array_values($arr); //重建索引
$_SESSION["uid"]=$arr;


?>

保存的页面和点击事件

 1 <div>
 2 请输入新建流程的名称:<input type="text" id="shuru"  /><br />
 3 
 4 <input type="button" value="保存" id="save" />
 5 
 6 </div>
 7 <script>
 8 $("#save").click(function (){
 9         var mingcheng=$("#shuru").val();
10         $.ajax({
11                 url:"save.php",
12                 data:{mingcheng:mingcheng},
13                 type:"POST",
14                 dataType:"TEXT",
15                 success: function(data)
16                 {
17                     alert("保存成功")
18                     }
19             
20             
21             
22             })
23     
24     
25     
26     
27     
28     })
29 
30 
31 
32 </script>

保存的处理页面

 1 <?php
 2 session_start();
 3 $name=$_POST["mingcheng"];
 4 $code=time();
 5 
 6 require "../DataBase.class.php";
 7 $db=new DataBase();
 8 $sql="insert into liucheng values(‘{$code}‘,‘{$name}‘)";
 9 $db->Query($sql,0);
10 
11 
12 $arr=$_SESSION["uid"];
13 foreach($arr as $k=>$v)
14 {
15     $sql2="insert into flowpath values(‘‘,‘{$code}‘,‘{$v}‘,‘{$k}‘)";
16     $db->Query($sql2,0);
17     }
18 
19 ?>

 

php流程控制(新建流程)

标签:效果图   处理   use   等等   rip   定义   ajax   数据库   ref   

原文地址:http://www.cnblogs.com/du892294464/p/6906221.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!