php流程控制(新建流程)
阿新 • • 發佈:2017-05-26
數組元素 ray cat 通過 觸發事件 else text [] code
流程控制,又是一個廣泛應用於辦公自動化等內部自定義流程及審核的功能。比如請假流程啊,申請辦公用品經費,報銷申請啊,等等,需要層層審批通過才能完成的(按規章辦事,最好別越級,你說是吧)
不習慣一篇博客太長,看不過來,這篇我們先實現流程的新建
先看看效果圖
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流程控制(新建流程)