javascript张贴到php for mysql插入记录
javascript post to php for mysql insert record
我读了很多关于这方面的教程,但似乎无法让它发挥作用-我在服务器上有以下PHP文件:
<?php
$host_name = "";
$database = "";
$user_name = "";
$password = "";
$connect = mysqli_connect($host_name, $user_name, $password, $database);
$user = $_POST['user'];
$sports = $_POST['sports'];
$location = $_POST['location'];
if (mysqli_connect_errno())
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
$sql = "UPDATE `userActivityLocation` WHERE user='$user' SET sports='$sports', location='$location'";
$result=mysql_query($sql);
?>
我试了好几种方法都没有用,不知道我做错了什么!如有任何建议,我们将不胜感激,谢谢!
编辑:我已经按照morgeunder的建议尝试了以下操作,但我仍然看不到数据库中创建的任何记录。
这是提交按钮的点击监听器:
$('#register').click(function () {
console.log("Ready! Getting the user details.");
username = document.getElementById('login').value;
password = document.getElementById('password').value;
email = document.getElementById('email').value;
window.localStorage.setItem("user", username);
console.log("Username: ", username);
console.log("Password: ", password);
console.log("E-Mail: ", email);
var params, connection;
params = {
login: username,
password: password,
email: email
};
//console.log("Params: ", params);
console.log("Creating new user");
QB.users.create(params, function (err, result) {
console.log("Result: ", result.toString());
// callback function
alert(username.toString());
var usernamePost = username.toString();
$.post("http://www.baseurl.co.uk/API/users.php", { user: usernamePost }, function (data) {
console.log(data);
console.log("HERE");
});
window.location = "sportsSelector.html"
});
});
您已经说过,您想要插入记录,但您使用了UPDATE
SQL命令。这就是为什么没有创建记录。
试试这个:
$sql = "INSERT INTO `userActivityLocation`(user,sports,location) VALUES ('$user', '$sports', '$location')";
还有一些事情需要考虑:
- jQuery肯定比普通的老xhr对象更容易。它为您处理跨浏览器问题
- 如果API位于客户端之外的其他服务器上,则应在服务器站点上设置某种交叉源过滤器(您可以在
.htaccess
中这样做 - 从字符串中"粘合"SQL是不安全的,因为可能存在SQL注入。准备好的陈述就是这个问题的答案
已解决!在你们这些可爱的人的帮助下,但最终的答案是一个完全独立的、不那么明显的问题。事件正在启动,帖子正在启动,服务器端代码很好,javascript在修复后也很好,但随后它被window.location调用粗暴地打断了!这就是破坏交易的原因。
相关文章:
- 如何使用JS禁用表行,并在MYSQL中插入所选选项
- Ajax和MySql的插入、检查和检索
- 如何在MySQL中插入多个记录/行
- mysql查询一次在单个查询中的多个表中插入记录
- 可以't通过JQUERY传递PHP变量并将它们插入MYSQL
- PHP MySQL 在一个页面和一个查询中插入具有多行的数据
- 全日历插件的功能无法正确插入 mysql 表
- 复选框(JSP PAGE)并插入到mysql数据库
- 如何在javasciipt中添加单引号到字符串,该字符串将在nodeJS中作为mysql插入命令执行
- 多行 PHP MySQL 插入
- 从Javascript中调用PHP脚本,将数据插入mysql数据库
- 我正在尝试将vaues从ajax发送到wcf,以插入mysql表中
- 如何将动态添加的文本框插入MySQL数据库
- 节点 mysql 插入当前日期
- javascript张贴到php for mysql插入记录
- mysql插入PHP形式的语句
- Node-mysql插入两个值的查询
- 为什么这个node-mysql插入产生一个数组?
- NodeJS -如何向MySQL插入多行
- 如何从mysql插入数据后,从数据库添加一个内容HTML没有刷新php