【问题标题】:How to pass a javascript variable to php using getJSON如何使用getJSON将javascript变量传递给php
【发布时间】:2017-03-22 21:26:40
【问题描述】:

我正在尝试创建一个根据用户 ID 列出一些通知的页面。

我有这个 Javascript 函数来获取 JSON 格式的结果

  var url="http://localhost/app/demo/getNotifications.php";
    $$.getJSON(url, function (result) {
      $$.each(result, function (i, field) {

        var nID = field.id;
        var nDonor = field.donor_id;

        // APPENDS DATA TO LISTFVIEW
        $$("#notlistview").append("HTML HERE");
      });

    });

这是 php 文件:

<?php
include "db1.php";

$USERID = " ";

$data=array();
$q=mysqli_query($con,"SELECT * FROM blood_donations WHERE requester_id='USERID'  ORDER BY `id` DESC");
while ($row=mysqli_fetch_object($q)){
 $data[]=$row;
}
echo json_encode($data);
?>

我的问题是如何从 javascript 中传递一个值来用发送的值填写 php 文件中的 $USERID?

我只需要检索与USERID相关的结果,所以如果您有其他方法,那也可以。

【问题讨论】:

  • 您的代码容易受到 sql 注入攻击;

标签: javascript php jquery mysql json


【解决方案1】:

您使用内置的全局$_GET 来检索参数:

<?php
if (isset($_GET['userid'])) {
    $USERID = $_GET['userid'];
} else {
    $USERID = " ";
}
?>

并从 jQuery 传递值:

$.getJSON(url,
{
    userid: myUserID 
},
function (result) {
        // your result function
});

【讨论】:

  • 谢谢!让我试一试,然后回复你。
【解决方案2】:

改变这个...

$$.getJSON(url, function (result) {

到这里……

$$.getJSON(url, {userID:123}, function (result) {

将 123 设置为您想要的任何值。

然后在你的 PHP 中从 $_GET['userID'] 获取你的变量

小心。您的脚本易受 SQL 注入攻击。

【讨论】:

  • 感谢您的回答,与我已经尝试过的第一个答案相同!但我真的很感谢你抽出时间来帮助我。
  • 没问题。我是堆栈溢出的新手。当我花时间回答一个问题时,我感到很沮丧,但写到一半时,其他人在我面前给出了相同的答案并抢走了我的风头!嗯嗯!
  • 哈哈,我以前也遇到过!就是这样,第一个正确答案,您有义务将其标记为完整,哈哈。再次感谢和抱歉。
猜你喜欢
  • 2019-07-07
  • 2017-04-29
  • 2011-04-09
  • 2011-09-27
相关资源
最近更新 更多