结合php与JQuery仅用两个页面对数据库的数据进行增删改

本文介绍了如何结合PHP和JQuery的$.ajax功能,通过两个页面(index.php和ajax.php)高效地处理数据库的增删改操作。这种方法减少了大量代码,提高了开发效率。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在使用PHP语言做系统时,对数据的增删改是必不可少的,开始时我也只是单纯的使用php对数据库进行操作,来实现数据的增删改,但是在一个系统中需要对数据库数据进行增删改的很多,只是单纯的使用php来实现的话所需要的代码页面非常的多,所以我结合php与JQuery(JQuery使用的是jquery-3.2.1.min.js)的$.ajax只需要两个页面就可以对数据进行增删改,特别的方便,下面就是实现代码:

执行增删改页面(index.php)的代码:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<script type="text/javascript" src="jquery-3.2.1.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
//点击添加按钮时执行的JQuery语句
	$("#but").click(function(){
			var name=$("#name").val();//获得添加的姓名输入框中输入的值
			var post=$("#post").val();//获得添加的职位输入框中输入的值
			$.ajax({
				url:"ajax.php?type=add",	//跳转到哪个页面
				type:"POST",			//传值方式
				data:{name:name,post:post},	//传值
				dataType:"json",
				error: function(){		//传值失败时执行的程序
					alert('错误');		
				},
				success: function(data,status){	//传值成功时
					if(data==false){
						$("#result").html("该用户名已经存在");
					}else{
						
						if(data==true){
							alert('添加成功!');
							document.location.reload();
						}else{
						
							alert('添加失败!');
						}
					}
				}
			});
	})

//点击删除文本是执行的代码
	$("table").on("click","tr td",function(){
		if($(this).text()=='删除'){
			var id=$(this).parent().children()[0].innerText;
			if(confirm("您确定要删除ID号为"+id+"的这位用户吗?")){
			$.ajax({
				url:"ajax.php?type=delete",
				type:"POST",
				data:{id:id},
				dataType:"json",
				error: function(){
					alert('错误');		
				},
				success: function(data,status){
					if(data==true){
						alert('删除成功!');
						document.location.reload();
					}else{
						
						alert('删除失败!');
					}
				}
			});
		}
		}		
//修改
		if($(this).text()=='修改'){
			var name=$(this).parent().children()[1].innerText;
			var post=$(this).parent().children()[2].innerText;
			//点击修改是,将用户名和职位转化为输入框
			$(this).parent().children()[1].innerHTML="<input type=text id='up_name' value="+name+" />";
			$(this).parent().children()[2].innerHTML="<input type='text' id='up_post' value="+post+" />";
			$(this).text('确认修改');
			return;
		}
		if($(this).text()=='确认修改'){
			var id=$(this).parent().children()[0].innerText;
			var up_name=$("#up_name").val();
			var up_post=$("#up_post").val();
			if(confirm("您确定要修改ID号为"+id+"的这位用户吗?")){
			$.ajax({
				url:"ajax.php?type=update",
				type:"POST",
				data:{id:id,up_name:up_name,up_post:up_post},
				dataType:"json",
				error: function(){
					alert('错误');		
				},
				success: function(data,status){
					if(data==true){
						alert('修改成功!');
						document.location.reload();
					}else{
						
						alert('修改失败!');
					}
				}
			});
		}
		}
	})
})
</script>
</head>

<body>
姓名:<input type="text" name="name" id="name">
职位:<input type="text" name="post" id="post">
<input type="button" value="添加" id="but">
<span id="result"></span>
<table border="1">
			<tr align="center">
				<td width="50">编号</td>
				<td width="150">用户名</td>
				<td width="150">职务</td>
				<td width="140" colspan="2">操作</td>
			</tr>
<?php
require 'PDO.php';
$sql=mysql_query("SELECT * FROM info") or die("执行查询语句失败!".mysql_error());
while($row=mysql_fetch_array($sql,MYSQL_BOTH)){
	echo '<tr align="center">
		<td width="50">'.$row[0].'</td>
		<td width="150">'.$row[1].'</td>
		<td width="150">'.$row[2].'</td>
		<td width="70">修改</td><td>删除</td>
	</tr>';
}
?>
</table>
</body>
</html>

实现增删改操作页面(ajax.php)代码:

<?php
class DbUtil{    
	//链接数据库 
        function __construct(){

          //设置连接地址 账号 密码,开始建立连接
		@mysql_connect("localhost","root","") or die("建立连接失败!");
	  //设置当前要操作的数据库 my
		@mysql_select_db("my") or die("连接数据库失败!");
	  //设置数据库输出的编码格式
		@mysql_query("utf8");
}
	function Add($name,$post){
		$select=mysql_query("SELECT * FROM info WHERE `name`='".$name."'") or die('执行查询语句失败!');
		$sum=mysql_num_rows($select);
		if($sum>0){
			$arrar=false;
		}else{
			$mysql_add=mysql_query("INSERT INTO info(name,post) VALUES('".$name."','".$post."')") or die("执行添加语句失败!");
			if($mysql_add){
				
				$arrar=true;
				
			}else{
			
				$arrar=false;
			}
		}
	echo json_encode($arrar);
	}
	
	//删除
	function Delete($id){
		$mysql_delete=mysql_query("DELETE FROM info WHERE id=".$id."") or die("执行删除语句失败!");
		if($mysql_delete){
		
			$delete=true;
		}else{
		
			$delete=false;
		}
	echo json_encode($delete);
	}
	
	//修改
	function Update($id,$up_name,$up_post){
		$mysql_update=mysql_query("UPDATE info SET `name`='".$up_name."',post='".$up_post."' WHERE id=".$id) or die("执行删除语句失败!");
		if($mysql_update){
		
			$update=true;
		}else{
		
			$update=false;
		}
	echo json_encode($update);
	}
}
$db=new DbUtil();
$type=$_GET['type'];
switch($type){
	case 'add':
		echo $db->Add($_POST['name'],$_POST['post']);
		break;
	case 'delete':
		echo $db->Delete($_POST['id']);
		break;
	case 'update':
		echo $db->Update($_POST['id'],$_POST['up_name'],$_POST['up_post']);
		break;
}
?>
如果代码有什么不足之处,望不吝赐教!




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值