Maison > Article > développement back-end > Gestion des processus php (php+Ajax)
php+Nouveau processus AJAX
1 : Quels processus doivent être clarifiés ?
2 : Qui doit exécuter chaque processus ?
3 : Quel est l’ordre des personnes effectuant ce processus ?
1. Les trois tables requises pour la construction de la base de données sont : la table des utilisateurs ; la table liucheng (les données ont été affichées dans la table)
2. Créez une nouvelle page de processus
(1) Utilisez Le drop- la liste déroulante affiche la liste des personnes et ajoute un bouton d'ajout
<h1>新建流程</h1> <p> 请选择节点人员: <select id="user"> <?php session_start(); require"../DBDA.class.php"; $db = new DBDA(); $sql = "select * from users"; $arr = $db->query($sql,1); foreach($arr as $v) { echo"<option value='{$v[0]}'>{$v[2]}</option>"; //输出单选按钮,数组中的索引2,也就是用户名,但是它的值是代号 } ?> </select> <input type="button" value="添加节点" id="addjd" /> </p> <br />
(2) Ajouter un événement de clic au bouton d'ajout de nœud
$("#addjd").click(function(){ var uid = $("#user").val(); $.ajax({ url:"add.php", data:{uid:uid}, type:"POST", dataType:"TEXT", success: function(data){ window.location.href="xinjian.php";//执行处理页面成功后会刷新页面 } }) })
( 3) Ajouter une page de traitement de nœud add.php
<?php session_start(); $uid = $_POST["uid"]; //接收传过来的值if(empty($_SESSION["jiedian"])) { $arr = array($uid);//定义一个数组放用户 $_SESSION["jiedian"] = $arr; //将第一个用户放入数组中} else { $arr = $_SESSION["jiedian"];//数组中有值 $arr[] = $uid; //放入数组中值 $_SESSION["jiedian"] = $arr; //将值再交给session}
(4) Afficher le nœud ajouté dans le nouveau processus page
<p> <?php if(empty($_SESSION["jiedian"])) { echo"还未添加节点人员!"; } else { $arr = $_SESSION["jiedian"]; foreach($arr as $k=>$v) { $sql ="select name from users where uid='{$v}'"; $name =$db->strquery($sql); echo"<p>{$k}--{$name}--<input type='button' value='移除' class='yichu' sy='{$k}'/></p>"; } } ?> </p> <br />
Après avoir terminé cette étape, l'effet est le suivant :
(5) Ajouter un événement de clic au bouton de suppression
$(".yichu").click(function(){ var sy = $(this).attr("sy"); //点击这个按钮,选中这个的索引号 $.ajax({ url:"yichu.php", data:{sy:sy}, type:"POST", dataType:"TEXT", success: function(data){ window.location.href="xinjian.php";//执行处理页面成功后会刷新页面 } }); })
(6) Supprimer la page de traitement yichu. php
<?php session_start(); $sy =$_POST["sy"]; //接收穿过来的索引号$arr = $_SESSION["jiedian"];//节点的数组unset($arr[$sy]); //删除数据$arr = array_values($arr);//重新索引$_SESSION["jiedian"] = $arr;
(7) Une fois le problème du nœud résolu, c'est le nom du processus. pour écrire le nom : L'important est que pour enregistrer ce processus, il doit y avoir un bouton de sauvegarde
<p> 请输入流程名称:<input type="text" id="mingcheng" /> </p> <br /> <input type="button" value="保存" id="baocun" />
(8) Ajouter un événement de clic au bouton Enregistrer
$("#baocun").click(function(){ var name = $("#mingcheng").val(); $.ajax({ url:"baocun.php", data:{name:name}, type:"POST", dataType:"TEXT", success: function(data){ alert("保存成功!"); } }); })
(9) Enfin, là est la page de traitement du processus de sauvegarde
<?php session_start(); require "../DBDA.class.php"; $db = new DBDA(); $name = $_POST["name"]; $code = time(); $sql ="insert into liucheng values('{$code}','{$name}')"; $db->query($sql); $arr = $_SESSION["jiedian"]; foreach($arr as $k=>$v) { $sql ="insert into flowpath values('','{$code}','{$v}',{$k})"; //注意建表的类型,这里的orders项用的是int型,所以{$k}不用加'',而且建表主键要勾选自增长 $db->query($sql); }
Bien sûr, le contenu est également enregistré dans la base de données en conséquence, l'effet est affiché dans le tableau de données en haut
Le code suivant est utilisé pour copier :
1.xinjian.php
b585974ae3b7dba3039af53a9593f9c4 383eb734b02b508089ba2d78eb4c6f68 93f0f5c25f18dab9d176bd4f6de5d30e 0f3eabac747cdf61a51589c5584ae6e8 b2386ffb911b14667cb8f0f91ea547a7无标题文档6e916e0f7d1e588d4f442bf645aedb2f202954c7e92b91561876db61cd5335d82cacc6d41bbb37262a98f745aa00fbf09c3bca370b5104690d9ef395f2c5f8d1 6c04bd5ca3fcae76e30b72ad730ca86d 4a249f0d628e2318394fd9b75b4636b1新建流程473f0a7621bec819994bb5020d29372a e388a4556c0f65e1904146cc1a846bee请选择节点人员: 49821feaa8adcef869675df18bcd0aad 02c3585e263069ccf55a7ec27c12db82query($sql,1); foreach($arr as $v) { echo"8dfcd5164ba7c14d3a3a5df4cc194797{$v[2]}4afa15d3069109ac30911f04c56f3338"; } ?> 18bb6ffaf0152bbe49cd8a3620346341 41970b5e738a2bdeb6bd0b93e8a3f3bd 94b3e26ee717c64999d7867364b1b4a3 ff9d32c555bb1d9133a29eb4371c1213 e388a4556c0f65e1904146cc1a846bee 27d30a292e6e169a45a46c02f1bea765$v) { $sql ="select name from users where uid='{$v}'"; $name =$db->strquery($sql); echo"e388a4556c0f65e1904146cc1a846bee{$k}--{$name}--d94811dbc25891e95c80dc21398ddea594b3e26ee717c64999d7867364b1b4a3"; } }?> 94b3e26ee717c64999d7867364b1b4a3 ff9d32c555bb1d9133a29eb4371c1213 e388a4556c0f65e1904146cc1a846bee请输入流程名称:e40a0d088a545ab211475e67dfc03b96 94b3e26ee717c64999d7867364b1b4a3 ff9d32c555bb1d9133a29eb4371c1213 87df0f69fa5923d851c5500cf9c43562 36cc49f0c466276486e50c850b7e4956 8019067d09615e43c7904885b5246f0a$("#addjd").click(function(){ var uid = $("#user").val(); $.ajax({ url:"add.php", data:{uid:uid}, type:"POST", dataType:"TEXT", success: function(data){ window.location.href="xinjian.php"; } }) }) $(".yichu").click(function(){ var sy = $(this).attr("sy"); $.ajax({ url:"yichu.php", data:{sy:sy}, type:"POST", dataType:"TEXT", success: function(data){ window.location.href="xinjian.php"; } }); }) $("#baocun").click(function(){ var name = $("#mingcheng").val(); $.ajax({ url:"baocun.php", data:{name:name}, type:"POST", dataType:"TEXT", success: function(data){ alert("保存成功!"); } }); }) 2cacc6d41bbb37262a98f745aa00fbf0 73a6ac4ed44ffec12cee46588e518a5e
2.add.php
13dc61b08c042f189a2e6183df5f5b05query($sql);$arr = $_SESSION["jiedian"];foreach($arr as $k=>$v) { $sql ="insert into flowpath values('','{$code}','{$v}',{$k})"; $db->query($sql); }
//输出单选按钮,数组中的索引2,也就是用户名,但是它的值是代号
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!