Php jqueryajax更新mysql表
在我的程序中有一个mysql表“company”。companyid和activation_code是该表中的一些列。我在一个html表中显示该表的值,其中包括comapproval.php页面。该html表的每一行都有一个accept按钮,当我单击该按钮时,公司表应该更新,该行从html表中删除。更新代码位于“approvecompany.php”页面。我使用jquery ajax进行此操作。当我单击“接受”按钮时,我只会收到成功警报。但我无法更新数据表。即使成功,也只会在html表的第一行获得完整警报。我是ajax新手。请帮助我解决此问题 com.phpPhp jqueryajax更新mysql表,php,jquery,html,mysql,ajax,Php,Jquery,Html,Mysql,Ajax,在我的程序中有一个mysql表“company”。companyid和activation_code是该表中的一些列。我在一个html表中显示该表的值,其中包括comapproval.php页面。该html表的每一行都有一个accept按钮,当我单击该按钮时,公司表应该更新,该行从html表中删除。更新代码位于“approvecompany.php”页面。我使用jquery ajax进行此操作。当我单击“接受”按钮时,我只会收到成功警报。但我无法更新数据表。即使成功,也只会在html表的第一行获
<table class="table table-striped table-bordered table-list">
<thead>
<tr>
<th>Action</th>
<th>ID</th>
<th>Registration number</th>
<th>Company Name</th>
<th>Email</th>
</tr>
</thead>
<tbody>
<?php
$conn = mysqli_connect("localhost", "root", "", "internship");
if (mysqli_connect_errno()) {
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
$sql = "";
$sql = "select * from company where activation_code=0";
$res = mysqli_query($conn, $sql);
while ($row = mysqli_fetch_assoc($res)):
?>
<tr>
<td align="center"><input type="submit" class="btn btn-default" value="Accept" id="accept" name="accept"></input></td>
<td><?php echo $row['companyid']; ?></td>
<td><?php echo $row['government_reg_no']; ?></td>
<td><?php echo $row['company_name']; ?></td>
<td><?php echo $row['email']; ?></td>
</tr>
<?php
endwhile
?>
</tbody>
</table>
<script>
$("#accept").click(function () {
$.ajax({
type:"POST",
url:"approvecompany.php",
data:{comid:$('<?php $row['companyid']?>').val()},
success:function () {
alert('Successfully approved');
window.location.reload(true);
}
});
});
</script>
行动
身份证件
注册号
公司名称
电子邮件
$(“#接受”)。单击(函数(){
$.ajax({
类型:“POST”,
url:“approvecompany.php”,
数据:{comid:$('').val()},
成功:函数(){
警报(“已成功批准”);
window.location.reload(true);
}
});
});
approvecompany.php
<?php
$conn=mysqli_connect("localhost","root","","internship");
$comid=$_POST['comid'];
if (mysqli_connect_errno()) {
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
$sql="update company set activation_code=1 where companyid=$comid";
if ($conn->query($sql) === TRUE) {
?>
<?php
}
else{
?><script>alert("Error...")</script><?php
}
?>
警报(“错误…”)
尝试重写comproval.php
,如下所示:
行动
身份证件
注册号
公司名称
电子邮件
$(“.myButton”)。单击(函数(){
var company_id=$(this.val();
$.ajax({
类型:“POST”,
url:“approvecompany.php”,
数据:{comid:company_id},
成功:函数(){
window.location.reload(true);
}
});
});
表示要了解的语句。即使是这样也不安全!,特别是因为当您尝试与这些元素交互时,它会在和CSS中引起问题。如果有多行的id=“accept”
将无法按计划工作。将其更改为类。如果我在while循环中使用jquery代码,它是否不正确?您可以在while循环中使用jquery代码。100%有效。非常感谢您的贡献Sachin PATIL…您是一位非常好的朋友。。。
<table class="table table-striped table-bordered table-list">
<thead>
<tr>
<th>Action</th>
<th>ID</th>
<th>Registration number</th>
<th>Company Name</th>
<th>Email</th>
</tr>
</thead>
<tbody>
<?php
$conn = mysqli_connect("localhost", "root", "", "internship");
if (mysqli_connect_errno()) {
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
$sql = "";
$sql = "select * from company where activation_code=0";
$res = mysqli_query($conn, $sql);
while ($row = mysqli_fetch_assoc($res)):
?>
<tr>
<td align="center">
<button type="submit" class="btn btn-default myButton" value="<?php echo $row['companyid']; ?>" id="accept" name="accept">Accept</button>
</td>
<td><?php echo $row['companyid']; ?></td>
<td><?php echo $row['government_reg_no']; ?></td>
<td><?php echo $row['company_name']; ?></td>
<td><?php echo $row['email']; ?></td>
</tr>
<?php
endwhile
?>
</tbody>
</table>
<script>
$(".myButton").click(function () {
var company_id = $(this).val();
$.ajax({
type:"POST",
url:"approvecompany.php",
data:{ comid: company_id },
success:function () {
window.location.reload(true);
}
});
});
</script>