我是JS和PHP编程的新手。请帮我处理以下代码..
<?php
echo'
<button id="checkin" onclick="myFunction()">CheckIn</button>
<script>
function myFunction() {
document.getElementById("checkin").disabled = true;
var CheckinoutStatus=true;
$(function(){
$.ajax({
type: "POST",
url: "functions.php",
data: "&CheckinoutStatus="+CheckinoutStatus,
success: function(data)
{
alert("Checked In");
}
});
});
}
</script>
';
if(isset($_POST['CheckinoutStatus']))
{
$CheckinoutStatus=isset($_POST['CheckinoutStatus']);
$update = $db->query("UPDATE Details SET CheckinoutStatus='$CheckinoutStatus' where date='$date' ");
}
?>
单击checkin
按钮应禁用该按钮,使用AJAX调用将CheckinoutStatus变量值true发送到数据库,然后在更新数据库后显示“Checked In”警报。
我在js中定义并将变量CheckinoutStatus
设置为 true ,并且
使用AJAX,我试图在PHP中获取该值并在现有表中更新该数据。我无法将值从js传递给php。
答案 0 :(得分:0)
除非您的表只有一条记录,否则您还需要传递某种密钥,以便更新正确的记录。点击下面的一行,我假设你的表格中有一个id为“key”的隐藏字段。
更改行:
data: "&CheckinoutStatus="+CheckinoutStatus,
要:
data: "&CheckinoutStatus=1&key="+$('#key').val(),
然后创建一个名为functions.php的PHP文件,它检查$ _GET ['CheckinoutStatus']的值,并使用类似于以下内容的where子句将其保存到表中:
UPDATE `mystatustable`
SET `checkinoutstatus` = $_GET['key']
WHERE `id` = $_GET['key'];
答案 1 :(得分:0)
更新: 当我通过链接传递值时,我实际上得到了它。
window.location.href =&#34; exp1.php?w1 =&#34; + CheckinoutStatus +&#34;&amp; w2 =&#34; + date;
但我无法通过使用相同的php文件来做到这一点..我必须创建一个新的php文件exp1.php以便它工作..