是否可以使用Javascript更新我的SQL数据库中的数据?
我开始用javascript学习一些SQL,我想把我的变量(“来自javascript的Val_Points”)放到用户的表(“Usuarios”)中(例如:Robert)。 这可以通过Javascript或其他一些方法吗?
var Val_Points = 0; /* Variable */ $('.btn').click(function() { Val_Points += 5; /* value +5 */ /* Update individual SQL Data var UpdateSQL = dbConn.executeUpdate('UPDATE Usuarios SET Points="$Val_Points" WHERE Username="$_SESSION[username]"'); */ $('#exp_bar').val(Val_Points); });
Points
此外,我正在看一个简化这个https://hiddentao.github.io/squel/的脚本,也许在编写脚本时更具可读性。 有帮助吗?
编辑
我试图用PHP通过$ _SESSION完成所有这些
<?php session_start(); require 'connect.php'; $username_session = $_SESSION['username']; $query = "SELECT * FROM `Usuarios` WHERE username='$username_session'"; $result = mysqli_query($connection, $query); if(empty($_SESSION['Val_Points'])){ $Val_Points_Session = $_SESSION['Val_Points'] = 0; } echo ""; echo $_SESSION['Val_Points']; /* Show current variable */ $Update_SQL = "UPDATE Usuarios SET Points='$Val_Points_Session' WHERE username='$username_session'"; ?>
但是它没有更新表,表保持相同的值
用户名点数
罗伯特0
是否可以使用Javascript将数据插入SQL数据库
简单的答案是否定的。 不只是使用Javascript。
要了解这一点,您需要了解client-side
和server-side
client-side
之间的区别。
客户端
由客户端执行的操作。 操作由用户的计算机/软件完成。 这也意味着客户可以根据需要修改数据。
服务器端
由服务器执行的操作。 操作在服务器上进行,仅使用客户端发送的信息。 收到数据后,客户端无法修改它。
您的数据库位于server-side
位于服务器上。 客户端无法直接访问此数据库,因此您需要将数据从client-side
发送到server-side
。 这可以使用javascript
完成。
那怎么做呢。
在你的情况下,你想要将Javascript
(客户端)与PHP
(服务器)结合起来。 通过PHP
我们将数据插入您的SQL
数据库。
例
Javascript / Jquery(!)
我们将使用$ .ajax() 。 这是jQuery框架中的一个函数,并向您的服务器发出请求。
$('.btn').click(function() { var request = $.ajax({ url: "phpfile.php", data: { label: "value" }, method: "POST" }); request.done(function() { // Do something after its done. }); });
PHP
“标准”方法
foo.php
是包含按钮并包含脚本的站点:
...
foo.js
添加了点击处理程序:
$('#update-btn').click(function() { $.ajax({ 'url': 'fooHandler.php', 'method': 'POST', 'data': {'sid': ..., 'action': 'update', 'value': ...} /* 'success': function(data) { ... } */ /* 'error': function ... */ }); });
fooHandler.php
处理来自客户端的服务器请求: