【问题标题】:Using json_encode for URL using PHP and MYSQL使用 PHP 和 MYSQL 对 URL 使用 json_encode
【发布时间】:2011-08-12 21:42:36
【问题描述】:

我需要检索来自包含 mysql 变量的 PHP 文件的 URL。不幸的是,它们没有被正确返回。

下面是我要链接的html文件:

<!doctype html>
<html>
<head>
  <meta charset="utf-8">
  <link rel="index" href="toc1.php" type="application/json">
</head>

我的 toc1.php 是文件:

<?php
  $username = $_GET['username'];
  $papername = $_GET['papername'];

  header('Content-Type: application/json');
  $username = json_encode($username);
  $papername = json_encode($papername);
?>

[{
"url": <?php echo '<a href="http://www.yoozpaper.com/cover.php?
username=' . $username . '&papername=' . $papername . '" ></a>';?>
},
{
"url": <?php echo '<a href="http://www.yoozpaper.com/tocindex.php?
username=' . $username . '&papername=' . $papername . '" ></a>';?>
},]

【问题讨论】:

    标签: php mysql arrays json


    【解决方案1】:

    删除 json_encode 怎么样?

    json_encode函数使json对象形成数组:

    $json = array();
    $json['something'] = "something else";
    $json['and_again'] = "more things";
    

    然后json_encode($json) 返回:

    {
         "something": "something",
         "and_again": "things"
    }
    

    所以json编码一个字符串:

    $username = "John Doe";
    echo json_encode($username);
    

    将导致"John Doe" 或错误

    【讨论】:

      【解决方案2】:

      我建议如下:

      $list = array();
      
      $objItem = new stdClass();
      $objItem->url = '<a href="…?username=' . $username . '&papername=' . $papername . '"></a>';
      $list[] = $objItem;
      
      // add more items
      

      最后,输出:

      echo json_encode($list);
      

      【讨论】:

        【解决方案3】:

        header() 调用必须是文件的第一行,请参阅manual。所以改成

        <?php
        header('Content-Type: application/json');
        
        $username = $_GET['username'];
        $papername = $_GET['papername'];
        
        $username = json_encode($username);
        $papername = json_encode($papername);
        ?>
        

        GET 变量应该从哪里来?您可能希望将链接更改为

        <link rel="index" href="toc1.php?username=foo&papername=bar" type="application/json">
        

        【讨论】:

          【解决方案4】:

          你的 Json {"some":"some"}

          这里 href=''

          <a href='{"some":"some"}'>Some</a>
          

          不是这个

          <a href="{"some":"some"}">Some</a>
          

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 2012-08-17
            • 1970-01-01
            • 1970-01-01
            • 2016-07-26
            • 1970-01-01
            • 2014-08-30
            • 2011-04-03
            相关资源
            最近更新 更多