【问题标题】:use json and javascript to populate a table使用 json 和 javascript 填充表格
【发布时间】:2014-12-26 00:57:03
【问题描述】:

我正在使用 php 来获取我想从中创建表的数据库查询。我想将查询结果放入一个 json 对象中,然后从那里使用 javascript 将结果输出到一个表中。我使用 json_encode 在 php 中创建 json 对象。

我对 javascript 还很陌生,所以我对如何将我创建的 json 对象发送到 javascript 然后使用 javascript 输出结果有点困惑?我应该将 javascript 包含在与 php 页面相同的文件中还是不同的文件中?

如果你能解释你在做什么,那就太棒了,因为我真的很想知道每一步发生了什么。

这是我目前所拥有的:

<?php
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";


 $conn = mysqli_connect($servername, $username, $password, $dbname);

 if (!$conn) {
   die("Connection failed: " . mysqli_connect_error());
}

 $sql = "SELECT Name,
          Location,
          ID,
          Price

         From ProdTable
         where ID>=2000";

 $encode=array();
 $result = mysqli_query($conn, $sql);
 while($row = mysqli_fetch_assoc($result)) {
     $encode[] = $row;
   }
 echo json_encode($encode);

?>

更新: 所以我继续将 xyz.php 作为我的后端页面,并创建了一个 main.php 来显示结果。我从这个示例函数开始,以确保我的 jquery 从 xyz.php 页面获取结果。现在,我不知道如何使用 jquery 在表中显示结果。

这是我为 main.php 页面所做的:

      <?php

         ?>

        <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
        <script>
        $(document).ready(function(){
         $("button").click(function(){
         $("#div1").load("xyz.php");
          });
          });
        </script>

       <div id="div1"></div>
       <button>Show JSON Results</button>

【问题讨论】:

  • $sql = ""SELECT Name, 你有 2 个双引号。如果不是错字,请删除一个$sql = "SELECT Name, - 另外,将Price, 中的尾随逗号删除。如果您使用错误检查,它会发出错误信号。通过这样做,可以很好地修复您的代码。
  • 哎呀,这是一个错误,感谢您指出这一点!

标签: javascript php json mysqli


【解决方案1】:

你可以做的是:

将 PHP 文件作为后端。所以,

xyz.php:

// PUT YOUR CODE HERE
$sql = "SELECT Name,
          Location,
          ID,
          Price    
         From ProdTable
         where ID>=2000";

 $encode=array();
 $result = mysqli_query($conn, $sql);
 while($row = mysqli_fetch_assoc($result)) {
     $encode[] = $row;
   }
echo json_encode($encode);
?>

并且应该可以从 URL 访问它。

例如:xyz.php?id=2000

现在,在要填充此数据的页面上,使用 jQuery

$.post

并操纵这个 json。

这将确保您的页面加载速度更快,因为在初始页面加载后会填充动态数据。

希望它对你有用。

【讨论】:

  • YW。但是你错过了一些东西。再次阅读我的评论;)
  • @Fred-ii-,我认为现在一切都已解决。 :)
  • 你去。现在,最好在您的回答中将这些错误指出给 OP,因为我的评论可能无法生存;)
  • 我不太确定如何使用 $post 来操作 JSON 数据,但我继续使用另一个函数来确保至少可以显示结果。我也可以从我制作的函数中操作json数据吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-11-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-09-18
相关资源
最近更新 更多