2016-07-04 16 views
0

我有PHP代码显示MongoDB中收集数据到PHP tablle,当我运行它,它不显示任何输出,MongoDB的采集数据到PHP表问题

请善待足以解决这

在这里我的代码

<?php 

     $m = new MongoClient(); 
     $db = $m->selectDB('MapData'); 
     $collection = new MongoCollection($db,'ETom4'); 

     $cursor = $collection->find(); 
     //echo "<html><head><body>"; 
     echo "<table>"; 
     foreach($cursor as $doc) { 
      echo "<tr>"; 
       echo "<td>" . $row['Name'] . "</td>"; 
       echo "<td>" . $row['Marks'] . "</td>"; 
       echo "<td>" . $row['value'] . "</td>"; 
      echo "</tr>"; 
     } 
     echo "<table>"; 
     //echo "</html></head></body>"; 
?> 

回答

1

您使用as $doc代替as $row这里。

foreach($cursor as $doc) { 
     echo "<tr>"; 
      echo "<td>" . $row['Name'] . "</td>"; 
      echo "<td>" . $row['Marks'] . "</td>"; 
      echo "<td>" . $row['value'] . "</td>"; 

将其更改为您需要使用的变量,是$doc而不是$row

$m = new MongoClient(); 
    $db = $m->selectDB('MapData'); 
    $collection = new MongoCollection($db,'ETom4'); 

    $cursor = $collection->find(); 
    //echo "<html><head><body>"; 
    echo "<table>"; 
    foreach($cursor as $doc) { 
     echo "<tr>"; 
      echo "<td>" . $doc['Name'] . "</td>"; 
      echo "<td>" . $doc['Marks'] . "</td>"; 
      echo "<td>" . $doc['value'] . "</td>"; 
     echo "</tr>"; 
    } 
    echo "<table>"; 
    //echo "</html></head></body>"; 

HTML坚持己见:

您也谈到了两行,你在<head></head>之内包含您的标记,并在</body>之前放置</html>

$m = new MongoClient(); 
    $db = $m->selectDB('MapData'); 
    $collection = new MongoCollection($db,'ETom4'); 

    $cursor = $collection->find(); 
    //echo "<html><head></head><body>"; 
    echo "<table>"; 
    foreach($cursor as $doc) { 
     echo "<tr>"; 
      echo "<td>" . $doc['Name'] . "</td>"; 
      echo "<td>" . $doc['Marks'] . "</td>"; 
      echo "<td>" . $doc['value'] . "</td>"; 
     echo "</tr>"; 
    } 
    echo "<table>"; 
    //echo "</body></html>"; 

语法/结构:

<html> 
    <head> 
    ... 
    </head> 

<body> 
... 
</body> 
</html> 

您还可以添加<!DOCTYPE html>作为第一行。


脚注:

您还需要确保该列的字母情况。

在遍历循环中的行时区分大小写。

因此Namename将被认为是不同的。

如果(上述任何或全部)仍然不适用于您,那么您可能在某处出现错误。

  • 因此,检查错误。
+0

感谢,做工精细,我注意到我的错误:) – Kavinda

+0

@Kavinda请检查您的所有问题的答案,并尝试以纪念这是correct.Thanks的答案。 –