当前位置: 首页 > news >正文

流程(上)

一、新建新流程

css样式

@charset "utf-8";
/* CSS Document */
*{
            margin:0px auto;
            padding:0px;
            }
		#wai{
			width:40%;
			}
		#xj{
			text-align:center;
			color:#fff;
			background-color:#060;
			height:60px;
			font-size:30px;
			font-weight:bold;
			vertical-align:bottom;
			line-height:85px;
			}
		#nm,#tt{
			height:40px;
			border:#00F inset 1px;
			line-height:40px;
			vertical-align:middle;
			color:#060;
			font-weight:bold;
			}
		#user{
			width:80px;
			height:30px;
			background-color:#060;
			color:#CFF;
			}
		.user{
			background-color:#060;
			color:#FFF;
			font-weight:bold;
			text-align:center;
			}	
		.bt{
			height:40px;
			border:#00F inset 1px;
			text-align:center;
			vertical-align:middle;
			line-height:40px;
			}
		#add{
			width:200px;
			background-color:#060;
			color:#fff;
			height:30px;
			font-size:18px;
			font-weight:bold;
			}
		#lcname	{
			width:70%;
			height:25px;
			}
		#chuangjian{
			width:120px;
			height:35px;
			background-color:#060;
			color:#FFF;
			font-size:20px;
			font-weight:bold;
			}
		.del{
			width:60px;
			height:25px;
			background-color:#9F6;
			}			

 引入文件

<script src="../jquery-1.11.2.min.js"></script>
<link href="xinjianliucheng.css" rel="stylesheet" type="text/css">

主页面

<body>
    <div id="wai">
    	<div id="xj">新 建 流 程</div>
        <div id="nm">
            请选择用户名:
            <select id="user">
<?php
	require_once"../DBDA.class.php";
	$db = new DBDA();
	$sql ="select * from users";
	$arr = $db->query($sql);
	foreach($arr as $v){
		echo"<option value='{$v[0]}'>{$v[2]}</option>";
	}
?>            
            </select>
        </div>
        <div id="jiedian"></div>
        <div class="bt"><input type="button" value="添加节点人员" id="add" /></div>
        <div id="tt">请输入流程名称:  <input type="text" id="lcname" /></div>
        <div class="bt"><input type="button" value="新建" id="chuangjian" /></div>
    </div>
</body>
<script type="text/javascript">
	//定义一个空数组
	var arr = new Array();
	$("#add").click(function(){
		//取出选中的值
		var uid = $("#user").val();//下拉列表的value值
		//取下拉选中的内容
		var options = $("#user option:selected");
		var name = options.text();
		if(ifArrVal(arr,uid)<0){
			var arrmin = new Array(uid,name);//定义一个小数组,数组的值为uid和name值
			arr.push(arrmin);//把小数组放进定义的大数组中成为一个二维数组
			xianshi();
		}else{
			alert("该用户已经存在");
		}//判断二维数组中是否存在某个值	
	})
	//点击创建按钮
	$("#chuangjian").click(function(){
		var lcname = $("#lcname").val();
		var str = "";
		for(var i=0;i<arr.length;i++){
			str +=arr[i][0]+"|";
		}
		str = str.substr(0,str.length-1);
		$.ajax({
			url:"chuli.php",
			data:{lcname:lcname,uids:str},
			type:"POST",
			dataType:"TEXT",
			success: function(data){
				alert("创建成功");
			}
		})
	})
	//显示选中的人员
	function xianshi(){
		var str = "";
		for(var i=0;i<arr.length;i++){
			str += "<div class='user'><span class='order'>"+i+"</span>  <span class='name' uid='"+arr[i][0]+"'>"+arr[i][1]+"</span>  <input code='"+i+"' type='button' value='删除' class='del' /></div>";
		}
		$("#jiedian").html(str);
		$(".del").click(function(){
			var code = $(this).attr("code");
			arr.splice(code,1);//删除数组元素,自动重新索引
			xianshi();
		})
	}
	function ifArrVal(arr,value){
		var bs = -1;
		for(var i=0;i<arr.length;i++){
			if(arr[i][0]==value){
				bs=1;
			}
		}
		return bs;
	}//判断二维数组中是存在某个值的方法
</script>

 

处理页面

<?php
	require_once"../DBDA.class.php";
	$db = new DBDA();
	$lcname = $_POST["lcname"];
	$uids = $_POST["uids"];
	$arr = explode("|","$uids");
	//添加流程
	$code = time();
	$sql = "insert into liucheng values('{$code}','{$lcname}')";
	if($db->query($sql,1)){
		foreach($arr as $k=>$v){
			$sql = "insert into flowpath values(0,'{$code}','{$v}','{$k}')";
			$db->query($sql,1);
		}
	}

DBDA.class.php

<?php
class DBDA{
	public $host="localhost"; //服务器地址
	public $uid="root"; //用户名
	public $pwd="123"; //密码
	public $dbname="crud"; //数据库名称
	
	/*
		执行一条SQL语句的方法
		@param sql 要执行的SQL语句
		@param type SQL语句的类型,0代表查询 1代表增删改
		@return 如果是查询语句返回二维数组,如果是增删改返回true或false
	*/
	public function query($sql,$type=0){
		$db = new MySQLi($this->host,$this->uid,$this->pwd,$this->dbname);
		$result = $db->query($sql);
		if($type){
			return $result;
		}else{
			return $result->fetch_all();
		}
	}
	public function strquery($sql,$type=0){
		$db = new MySQLi($this->host,$this->uid,$this->pwd,$this->dbname);
		$result = $db->query($sql);
		if($type){
			return $result;
			}else{
				$arr = $result->fetch_all();
				$str = "";
				foreach($arr as $v){
					$str .= implode("^",$v)."|";
					}
				$str = substr($str,0,strlen($str)-1);
				return $str;
				}
		}
	//返回json数据的方法
	public function jsonquery($sql,$type=0){
		$db = new MySQLi($this->host,$this->uid,$this->pwd,$this->dbname);
		$result = $db->query($sql);
		if($type){
			return $result;
		}else{
			$arr = $result->fetch_all(MYSQLI_ASSOC);//关联数组
			return json_encode($arr);//转换json
			//json_decode()分解json
		}
	}
}

 

   

 

转载于:https://www.cnblogs.com/navyouth/p/8417248.html

相关文章:

  • 好领导:提升领导威信力的110个管理奥秘
  • 我的重构第二步
  • 部署eolinker开源版接口管理
  • 基于django的生成二维码的接口
  • 09-移动端开发教程-Sass入门
  • while循环按行读文件的方式总结
  • ElasticSearch「1」本地安裝Elasticsearch 6.0.1 + Elasticsearch-head插件
  • 2018/02/09
  • PhysicsBasedAnimation学习
  • 一些基于React、Vue、Node.js、MongoDB技术栈的实践项目
  • Mybatis分页插件PageHelper简单使用
  • 企业IM-2技术选型
  • 干货分享微服务spring-cloud(1.初探)
  • java 内存溢出 栈溢出的原因与排查方法
  • Qpid第四课 异常以及崩溃
  • 2017-08-04 前端日报
  • Angular2开发踩坑系列-生产环境编译
  • bootstrap创建登录注册页面
  • gulp 教程
  • HTML中设置input等文本框为不可操作
  • IDEA 插件开发入门教程
  • MySQL几个简单SQL的优化
  • React16时代,该用什么姿势写 React ?
  • React-redux的原理以及使用
  • sessionStorage和localStorage
  • SpiderData 2019年2月23日 DApp数据排行榜
  • 如何使用 JavaScript 解析 URL
  • 入手阿里云新服务器的部署NODE
  • 使用docker-compose进行多节点部署
  • 树莓派 - 使用须知
  • 它承受着该等级不该有的简单, leetcode 564 寻找最近的回文数
  • 移动端解决方案学习记录
  • 译米田引理
  • 中国人寿如何基于容器搭建金融PaaS云平台
  • gunicorn工作原理
  • Spring Batch JSON 支持
  • (2)(2.10) LTM telemetry
  • (C语言)fgets与fputs函数详解
  • (七)Knockout 创建自定义绑定
  • (十一)手动添加用户和文件的特殊权限
  • (原)本想说脏话,奈何已放下
  • (转)linux自定义开机启动服务和chkconfig使用方法
  • **PHP分步表单提交思路(分页表单提交)
  • .aanva
  • .NET Core MongoDB数据仓储和工作单元模式封装
  • .Net Framework 4.x 程序到底运行在哪个 CLR 版本之上
  • .net(C#)中String.Format如何使用
  • .Net7 环境安装配置
  • .net生成的类,跨工程调用显示注释
  • @entity 不限字节长度的类型_一文读懂Redis常见对象类型的底层数据结构
  • @Pointcut 使用
  • [ 云计算 | AWS ] 对比分析:Amazon SNS 与 SQS 消息服务的异同与选择
  • [22]. 括号生成
  • [ARC066F]Contest with Drinks Hard
  • [BJDCTF 2020]easy_md5