Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/438.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用ajax将值插入数据库,其中会话变量等于当前用户会话_Javascript_Php_Mysql_Ajax_Session - Fatal编程技术网

Javascript 使用ajax将值插入数据库,其中会话变量等于当前用户会话

Javascript 使用ajax将值插入数据库,其中会话变量等于当前用户会话,javascript,php,mysql,ajax,session,Javascript,Php,Mysql,Ajax,Session,我试图在当前会话的基础上,将使用ajax函数的PHP脚本生成的值插入到我的数据库中。下面是生成新地址的ajax函数: <script> function newaddress(){ $.ajax({ url:"newaddress.php", //the page containing php script type: "POST", //request type success:function(result){

我试图在当前会话的基础上,将使用ajax函数的PHP脚本生成的值插入到我的数据库中。下面是生成新地址的ajax函数:

<script>
function newaddress(){
  $.ajax({
        url:"newaddress.php", //the page containing php script
        type: "POST", //request type
        success:function(result){                           
        document.getElementById('depositAddress').value = result;       
        alert("New address generated");
       }
     });
 }
</script>
我的问题是,如何使用页面上运行的当前会话将“结果”添加到数据库中?我想了一些类似于

<?php
    include_once 'dbh.inc.php';
    $sql = "INSERT INTO users(BTCAddress) VALUES ('result') WHERE ('u_uid') = ($_SESSION['u_uid']);";
?>

第二个php脚本只是粗略编写出来的。我需要使用post方法吗?如果是这样,如何将ajax javascript生成的结果发布到php文件中,以便将生成的地址保存到数据库“用户”中,其中会话等于网页上运行的当前会话?。对不起,如果我对事情含糊不清或过于复杂。任何帮助都将不胜感激。

我解决了它。我意识到在我的第一篇博文中有一些愚蠢的问题,对此我深表歉意。只需添加newaddress.php文件以添加新的会话变量,然后更新数据库即可

$user = $_SESSION['u_uid'];
$_SESSION['BTCAddress'] = $btcaddress;
$sql = "UPDATE users SET BTCAddress = '$btcaddress' WHERE user_uid = '$user';";
mysqli_query($conn, $sql);

最后很简单。谢谢你的意见。

我想你误解了一些概念。或者我误解了你的问题。JavaScript代码从newaddress.php脚本中获取一些数据,并将其放在由DepostAddress标识的HTML元素上。您显示的PHP脚本在表用户的BTCAddress列中插入值'result',该行的u_uid值与会话变量u_uid的值相同。感谢您的回复,我试图得到的是PHP脚本'result'中的值将反映javascript中的'result'值。另外,我应该在哪里包括phpscript来更新值,因为它当前不在我的javascript函数中。我希望在按下按钮启用“onclicknewaddress”时更新数据库。目前,它只是将新地址插入到我指定为“DepostAddress”的字段中。第二个脚本是newaddress.php的内容吗?您的第一个脚本是否必须调用它,以便在数据库中插入一些数据?insert不使用WHERE子句。检查错误,您将在查询中看到一个错误,并查看您的开发人员控制台。第二个php脚本只是粗略计算出来的,我说过它没有经过测试,只是为了您的理解。谢谢大家的帮助,但我想我现在可以从你们非常有用的见解中找到解决方法。很高兴看到你们找到了这里真正需要的东西。然而,我需要指出的是,这对sql注入是开放的。使用预先准备好的语句,即使您认为它不会受到影响,因为它位于受保护的网络上。网络中的任何人都可以轻松破解此漏洞。即使是你最好的朋友也会伤害你,记住这一点。你为什么要撤销我所做的编辑?这样的评论不应该出现在答案中。如果你对某人的评论有问题,只需标记它。请删除rant.mysqli\u real\u escape\u字符串是否足以阻止此操作?有人说,即使是该函数也不是最好的。相信我,学习如何使用它们总是最好的。