【问题标题】:Pass javascript variables into Database with MySQL and PHP [duplicate]使用 MySQL 和 PHP 将 javascript 变量传递到数据库 [重复]
【发布时间】:2012-03-11 00:19:39
【问题描述】:

可能重复:
How to pass a variable / data from javascript to php and vice versa?

我有 3 个 javascript 变量,它们给了我一个 id、一个名字和一个姓氏:

    if (!response.error) {

    document.getElementById("meName").innerHTML = response.id 
                                                 + " " + response.name
                                                 + " " + response.surname ;
                        }

现在我想将这些变量(response.idresponse.nameresponse.surname)传递到我的数据库中。

类似这样的:

<?php

    $query = mysql_query("INSERT INTO users (id, name, surname) VALUES 
 ('response.id', 'response.name', 'response.surname')") or die(mysql_error());

$result = mysql_fetch_array($query);
return $result;

?>

我该怎么做?

【问题讨论】:

  • 首先你要明白客户端和服务器的区别。

标签: php javascript mysql


【解决方案1】:

这是你需要的:

        if (!response.error) {
                    var uid = response.id;
                var firstname = response.name;  
                    var surname = response.surname  

                    if (window.XMLHttpRequest) {
                        xmlhttp = new XMLHttpRequest();
                    }

                    xmlhttp.open("GET", "ajax.php?uid=" + uid + "&firstname=" + firstname + "&surname=" +  surname , true);
                    xmlhttp.send();

                    return false;

        }

在你的 ajax 文件中:

<?php include("YOUR_CONNECTION_FILE.php");


$uid = mysql_real_escape_string($_GET['uid']);
$firstname = mysql_real_escape_string($_GET['firstname']);
$username = mysql_real_escape_string($_GET['surname']);


$query = mysql_query(" YOUR MYSQL QUERY ") or die(mysql_error());  
?>

【讨论】:

    【解决方案2】:

    那么,ajax 将是您的最佳选择。

    在这里查看我的答案How to send a form without refreshing the page?

    还可以查看一些文档:

    jQuery 文档

    教程

    【讨论】:

      【解决方案3】:

      我猜你正在尝试将 javascript 变量传递给 php。

      为此,您需要使用 POST 或 GET 方法。

      This question's answer will help.

      【讨论】:

        【解决方案4】:

        您需要对存储变量的单独 PHP 脚本进行 AJAX 调用。

        Javascript 在浏览器端运行,而 PHP 在服务器端运行——当浏览器在页面中运行 Javascript 代码时,它已经在服务器端运行完毕,因此所有 PHP 代码都已经执行完毕。

        【讨论】:

        • 这就是我来这里问这个问题的原因,否则我就去做,你不觉得吗?你在回答我的问题。
        【解决方案5】:

        我相信响应是你通过ajax返回的,如果是这样,你应该检查两件事

        首先,将 ajax 数据类型设置为 'json'。

        二、替换

        return $result
        

        return json_encode($result);
        

        作者。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2015-08-24
          • 1970-01-01
          • 2014-01-11
          • 1970-01-01
          • 2016-02-23
          • 1970-01-01
          相关资源
          最近更新 更多