我一直只使用JavaScript进行编程,现在我想使用一些数据库并学习SQL。我想知道,如果它是常见的,安全的态度,在发送Ajax请求的SQL语句,比如像这样:javaScript中的SQL语句AJAX请求
xhttp= new XMLHttpRequest();
xhttp.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) {
//something
}
};
var sql = 'SELECT * FROM Customers'; //creating SQL statements in JS like this
xhttp.open("GET", "getFromDatabase.php?q="+sql, true);
xhttp.send();
//PHP:
$result = mysqli_query($con,$q);
echo $result;
,而不是保持和生成所有必要的SQL语句在AJAX开放指示的PHP文件中()这样的:
xhttp= new XMLHttpRequest();
xhttp.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) {
//something
}
};
xhttp.open("GET", "getFromDatabase.php?q=getCustomers", true);
xhttp.send();
//PHP:
if ($q==="getCustomers") {
$sql="SELECT * FROM Customers"; //here are ALL SQL statements
$result = mysqli_query($con,$sql);
echo $result;
}
所有互联网我读过了倾向于第二种attitube的教程和样本,但对我来说 - 谁不知道PHP,并不想了解在这个时候 - 第一种(JS)态度会更容易,仅仅用于学习和测试如何处理数据库。然后,我可以创建一个简单的PHP文件,仅用于返回带有一些数据的JSON和其他所有的JavaScript文件。
2016-12-20
Paweł
+2
这就是你的整个数据库如何被盗/删除...不要这样做...他们需要在PHP ....如果不是任何人都可以运行SQL请求。 –
+1
被盗或有人打开控制台并通过“DROP TABLE Customers'语句执行请求 –
+1
由于用户可以访问的工具,恶意人员将能够修改和利用此类代码,并且您可以获取数据泄露。 –