我有php代码,它显示一个表,其内容显示在数据库中的表中。其中一个字段是状态字段。有一个“更改”按钮,可以将“非活动”状态更改为“活动”,反之亦然。
我需要知道如何编写“更改”按钮的代码。是否应该用jquery编写,或者也可以用php编写。
代码如下:
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="indexStyle.css">
<title>User List</title>
</head>
<body>
<table border="2" bgcolor="#50D5CE">
<tr>
<td>SL. No</td>
<td>Name</td>
<td>Mobile Number</td>
<td>Status</td>
</tr>
<?php include ('header.php');
include ('includes/connect.php');
$dbconn = new connect();
$fields = "first_name,last_name,mobile_number,status";
$user_details = $dbconn->select($fields,"user_details","1");
$c=1;
for($i = 0; $i < count($user_details);$i++){
?>
<tr>
<td><?php echo $c ?></td>
<td><?php echo $user_details[$i][0]." ".$user_details[$i][1]; ?></td>
<td><?php echo $user_details[$i][2] ?></td>
<td><?php if($user_details[$i][3] == 0) {
echo "Inactive"; }
else echo "Active"; ?>
<input type="button" name="change_status" id ="change_status" value="Change"/></td>
</tr>
<?php $c++;
} ?>
</table>
</body>
</html>
答案 0 :(得分:2)
jQuery是Javascript并在用户的计算机上运行,而PHP则在服务器上运行。问题是用户必须触发数据库更新,服务器必须执行它。因此,您需要使用jQuery发送AJAX请求,并且您的服务器端必须执行更新。
答案 1 :(得分:1)
change input: ↓
<input type="button" name="change_status" id ="change_status" value="Change" onclick="update_status(<?php echo $user_details[$i][2]; ?>,<?php echo $user_details[$i][3]; ?>)"/>
<script>
function update_status(mob_no,sta)
{
$.ajax({
type: "POST",
url: "update_status.php",
data: {mobno:mob_no,status:sta},
success: function(data){
// whatever you do here after success
}
}
</script>
UPDATE_STATUS.PHP
<?php
if(isset($_POST['mobno']) && isset($_POST['status']))
{
$mono= $_POST['mobno'];
$temp_status = 0;
if($_POST['status']==0)
$temp_status=1;
mysql_query("update user_details set status='$temp_status' where mobile_number ='$mono'");
}
?>
答案 2 :(得分:0)
您可以使用PHP
代码或jQuery AND PHP
代码进行更改。
这是因为您需要服务器端语言(在您的情况下为PHP)才能访问您的数据库。所以需要服务器端脚本。
要运行服务器端脚本,可以直接调用php页面,也可以从AJAX请求调用它(在你的jQuery案例中)。