[英]Sending value of PHP variable to Javascript document
因此,我尝试进入MySQL表并得出一个值。 我有以下这样做的PHP:
<!DOCTYPE html>
<html>
<body>
<?php
$username = strval($_GET['userName']);
$con = mysqli_connect('localhost','PRIVATE','PRIVATE','PRIVATE');
if (!$con) {
die('Could not connect: ' . mysqli_error($con));
} else {
$sql="SELECT * FROM users WHERE username = '".$username."'";
$result = mysqli_query($con,$sql);
while($row = mysqli_fetch_array($result)) {
$wealth = $row['wealth'];
echo $wealth;
}
}
mysqli_close($con);
//return $wealth;
?></body>
</html>
出于安全原因,我将PRIVATE放在数据库ID和密码所在的位置。 本质上,此PHP根据登录的用户将值从“财富”列中删除。 我有触发此PHP的AJAX函数(ajax位于我想向其发送PHP变量的文档中)。 请注意,此函数将当前登录用户的用户名及其“分数”(变量点击)发送到PHP。
function sendScore() {
$.post("sendScore.php",{username:localStorage.getItem('userName'),wealth:clicks},function(response){
console.log("The service replied"+response);
});
}
现在,我知道我检索到的值等于PHP变量$ wealth。 我也了解PHP是基于服务器的,而Javascript / html是基于客户端的,因此您不能简单地进入另一个文档并找到变量的值。 我想将$ wealth的值分配给一个名为:userWealth的javascript变量
谢谢阅读!
编辑:我写了Q错误...
@Ilan Kleiman小问题...我有两个单独的PHP文件,sendScore和getScore。 我错误地在问题中粘贴了错误的内容。 因此,我有在问题中可以看到的sendScore AJAX,但这会触发上面未显示的不同PHP代码,该代码实际上写入了“财富”一栏。 我有一个单独的PHP,如上所示,用于从财富列中检索书面信息(例如,当关闭选项卡时,cookie clicker如何保存点击次数,当您打开网站备份时,此代码将激活再次加载,并在“财富”中加载最后写入的值)。 我正在研究如何创建一个可以将代码生成的$ wealth PHP变量转换为javascript变量的AJAX。 对困惑感到抱歉。
编辑#2:代码
AJAX for SENDSCORE
$.post("sendScore.php",{username:localStorage.getItem('userName'),wealth:clicks},function(response){
console.log(“服务已回复” +响应); });
PHP的发送代码
<!DOCTYPE html>
<html>
<body>
<?php
$username = strval($_POST['username']);
$wealth = strval($_POST['wealth']);
$con = mysqli_connect('localhost','PRIV','PRIV','PRIV');
if (!$con) {
die('Could not connect: ' . mysqli_error($con));
} else {
$sql = "UPDATE users SET wealth=".$wealth." WHERE username='".$username."'";
$result = mysqli_query($con,$sql);
}
mysqli_close($con);
?></body>
</html>
我想找到的AJAX for GETSCORE
PHP的GETSCORE
<!DOCTYPE html>
<html>
<body>
<?php
$username = strval($_GET['userName']);
$con = mysqli_connect('localhost','PRIV','PRIV','PRIV');
if (!$con) {
die('Could not connect: ' . mysqli_error($con));
} else {
$sql="SELECT * FROM users WHERE username = '".$username."'";
$result = mysqli_query($con,$sql);
while($row = mysqli_fetch_array($result)) {
$wealth = $row['wealth'];
echo $wealth;
}
}
mysqli_close($con);
//return $wealth;
?></body>
</html>
在您的PHP文件中:
更改
echo $wealth;
至
echo "<div id='wealth'>" . $wealth . "</div>";
AJAX请求:
var userWealth;
function getScore() {
var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) {
userWealth = document.getElementById("wealth").innerHTML;
alert(userWealth);
}
};
xhttp.open("GET", "getScore.php", true);
xhttp.send();
}
这将从PHP将“ userWealth”设置为$ wealth。
请记住,JavaScript应该与PHP在同一“服务器/网站”上,否则AJAX请求将无法工作。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.