【发布时间】:2019-02-16 00:22:03
【问题描述】:
我正在尝试使用 AJAX 和 PHP 发送插入和删除 sql 查询。我检查了开发人员工具的网络选项卡,我可以看到,当我单击输入时,它成功检索了值,所以我遇到的主要问题是将这些值插入数据库并从数据库中删除值。
编辑:关于我的 SQL 查询没有返回错误消息,所以我不确定发生了什么。
这是我的 HTML 和 JQUERY 代码:
$(document).ready(function() {
$("#favbut").click(function() {
var username = $("#usernamefav").val();
var lid = $("#lidfav").val();
var favourite = $("#favouritefav").val();
$.ajax({
url: "fave.php",
type: "post",
dataType: "json",
data: {
username: username,
lid: lid,
favourite: favourite
}
});
});
$("#unfavbut").click(function() {
var username = $("#usernameunfav").val();
var lid = $("#lidunfav").val();
var favourite = $("#favouriteunfav").val();
$.ajax({
url: "unfave.php",
type: "post",
dataType: "json",
data: {
username: username,
lid: lid,
favourite: favourite
}
});
});
});
<input type="hidden" name="username" id="usernamefav" value='.$user.'>
<input type="hidden" name="lid" id="lidfav" value='.$lid.'>
<input type="hidden" name="favourite" id="favouritefav" value=YES>
<input class="favButt fav" id="favbut" type="submit" name="faveBTN" value="Fave">';
<input type="hidden" name="username" id="usernameunfav" value='.$user.'>
<input type="hidden" name="lid" id="lidunfav" value='.$lid.'>
<input type="hidden" name="favourite" id="favouriteunfav" value=YES>
<input class="favButt unfav" id="unfavbut" type="submit" name="unfaveBTN" value="unFave">';
这里是 php 文件:
<?php
if(isset($_POST['favbut'])){
include 'includes/dbh.inc.php';
$username = $_POST['username'];
$lid = $_POST['lid'];
$favourite = $_POST['favourite'];
$sql = "INSERT INTO userslocation (fid,username,lid,favourite) VALUES ('','".$username."', '".$lid."','".$favourite."')";
$result = (mysqli_query($conn, $sql));
}
?>
<?php
if(isset($_POST['unfavbut'])){
include 'includes/dbh.inc.php';
$username = $_POST['username'];
$lid = $_POST['lid'];
$favourite = $_POST['favourite'];
$sql = "DELETE FROM userslocation WHERE username='$username' AND lid='$lid'";
$result = (mysqli_query($conn, $sql));
}
?>
感谢您对出现问题的任何帮助!
【问题讨论】:
-
您没有检查查询结果。
mysqli_error($conn)告诉你什么? -
抱歉这个愚蠢的问题,但我在哪里阅读 mysqli_error 的输出?
-
你可以在任何你想要的地方输出。例如,您可以直接将其写入脚本输出:
echo mysqli_error($conn);然后在您的客户端代码(或浏览器的调试工具)中,您将读取来自 AJAX 调用的响应。 -
我不知道我是不是很愚蠢,但它没有在响应窗口中显示任何内容,它只是说“此请求没有可用的响应”。抱歉让我如此绝望。