javascript - ajax 工作,但它不插入到我的 sql 查询 (js/php)
问题描述
我不明白 ajax 是否以这种方式工作,但数据不会添加到我的 mysql 数据库中。我在 chrome 浏览器中检查了网络选项卡,发现数据已被转发。我试过这样
脚本.js:
$(".btn_ranking").click(function (e) {
e.preventDefault();
var name = localStorage.getItem('name');
var time = localStorage.getItem('timer_end');
$.ajax({
url: "php/file.php",
method: "POST",
data: { "name": name, "time": time }
})
});
文件.php:
<?php
require_once "connect.php";
$polaczenie = @new mysqli($host, $db_user, $db_password, $db_name);
$name = $_POST['name'];
$time = $_POST['time'];
if ($polaczenie->connect_errno != 0) {
echo "Error: " . $polaczenie->connect_errno;
} else {
if ($rezultat = @$polaczenie->query("INSERT INTO ranking (id, name, time) VALUES (NULL, $name, $time)")) {
echo "ok";
}
}
?>
解决方案
首先,您最好使用PrepareStatement来传递参数,而不是直接将它们写入您的 sql。
对于您当前的代码,请尝试更改为以下代码
if ($rezultat = @$polaczenie->query("INSERT INTO ranking (id, name, time) VALUES (NULL, '".$name."', '".$time."')")) {
echo "ok";
}
推荐阅读
- python - FAIL : NameError: name 'urlparse' 未定义
- typescript - 使用带有方法的索引签名 - Typescript 3.5
- vim - vim 帮助产生“无法打开交换文件”错误
- javascript - “访问控制允许来源”:“*”不起作用
- php - 如何一次循环通过某个数字$ wpdb结果php wordpress
- ruby-on-rails - 如果用户已注册该帖子,则检查用户是否可以在帖子中发表评论
- ruby-on-rails - Rspec:期望“超级”被调用
- javascript - 如何避免与 getstream-cli 冲突的终端命令?
- reactjs - 试图窥探一个模拟函数
- google-cloud-platform - 如何在 Google Cloud 上查看 VM 实例的磁盘使用情况?