我是初学者所以告诉我,如果我做了一些根本错误的事情。 我试图用ajax发布数据。帖子本身有效,但它没有传递任何数据。
<script type="text/javascript">
$(document).ready(function(){
$("button").click(function(){
$.ajax({
type: 'POST',
url: 'processwifi.php',
data:{'postid': postid},
success: function(response){
alert('it works');
}
});
});
});
</script>
and processwifi.php
<?php
$id = isset($_POST["postid"]);
$link = new mysqli("127.0.0.1","***","***","secretariaat");
if (!$link) {
echo "Error: Unable to connect to MySQL." . PHP_EOL;
echo "Debugging errno: " . mysqli_connect_errno() . PHP_EOL;
echo "Debugging error: " . mysqli_connect_error() . PHP_EOL;
exit;
}
$sql = "UPDATE wifi SET gebruikt='1' WHERE wifi.id='$id'";
if ($link->query($sql) === TRUE) {
echo "Update of record is '$id' successfully";
} else {
echo "Error: " . $sql . "<br>" . $conn->error;
}
mysqli_close($link);
//Redirect result page
//header('HTTP/1.1 301 Moved Permanently');
//header('Location: wificode.php');
?>
有人能帮帮我吗?
非常感谢提前。
答案 0 :(得分:0)
您需要定义变量postid
<script type="text/javascript">
$(document).ready(function(){
$("button").click(function(){
var postid = 10; // define postid here
$.ajax({
type: 'POST',
url: 'processwifi.php',
data:{'postid': postid},
success: function(response){
alert('it works');
}
});
});
});
</script>
答案 1 :(得分:0)
问题是你还没有陈述postid
应该表明什么。您正在尝试从variable / field / property
获取永远不会声明和设置的值。
在以下示例中,我将postid
的值设置为1
。
https://jsfiddle.net/n5rc6u3g/
尝试调试&#34;网络&#34;选项卡,您会注意到已发送的表单数据表明postid
为1
。
此外,您的后端代码存在根本性错误。您尝试使用postid
方法获取isset($_POST["postid"])
isset
方法的签名是:
bool isset ( mixed $var [, mixed $... ] )
意味着它返回boolean
,true
或false
。这反过来表明该值是否设置而不是null。 http://php.net/manual/en/function.isset.php