当我点击与该行相关联的批准按钮时,我正在尝试更新phpmyadmin数据库中的一行
这是我要批准的行:
1,星名=问题 - 谁问[批准按钮] [不赞成 键]
这是我的db_replicator.php:
<?php
include("db_conn.php");
$sql = "update questions set approved = 1 where questionID = ?";
$qc = $pdo_conn->prepare($sql);
$qc->execute(array($_POST['questionID']));
echo 'saved';
?>
这是我的views.php顶部的函数:
<script src="http://code.jquery.com/jquery-1.10.1.min.js"></script>
<script>
function save_a(id){
$.post('db_replicator.php', {questionID:id}, function(result) {
alert(result);
window.location.reload();
});
}
</script>
以下是我目前在views.php上的代码:
echo "<br><b>new questions: {$row4['count']}</b><br>";
while ($row44 = $prep44->fetch(PDO::FETCH_ASSOC)) {
echo "{$row44['questionID']} , {$row44['starName']} = {$row44['question']} - {$row44['whoAsked']}
<button onclick='save_a({$row44['questionID']})'></button><button>Disapprove</button><br>";
}
答案 0 :(得分:1)
我认为您对服务器和客户端代码存在一些误解。
Js在客户端计算机上运行,而PHP在服务器端运行。 您需要对您的php代码运行ajax请求,这会将您的行保存到db。
您可以执行以下操作:
db_replicator.php:
include("db_conn.php");
$sql = "update questions set approved = 1 where questionID = ?";
$qc = $pdo_conn->prepare($sql);
$qc->execute(array($_POST['questionID']));
echo 'saved';
你的js在页面上的save_a函数传递行的id:
function save_a(id){
$.post('db_replicator.php', { questionID: id }, function(result) {
alert(result);
});
}
更改按钮代码:
echo "{$row44['questionID']} , {$row44['starName']} = {$row44['question']} - {$row44['whoAsked']}
<button onClick=save_a($row44['questionID']);'>Approve</button><button>Disapprove</button><br>";