0

编辑:这就是我想要实现的目标:http: //i.imgur.com/KE9xx.png

我试图在两列中显示我的数据库中的结果。我对 PHP 有点陌生,所以我对如何执行此操作一无所知。有人可以帮我吗?提前致谢。

这是我当前的代码:

include('connect.db.php'); 
// get the records from the database
if ($result = $mysqli->query("SELECT * FROM todo ORDER BY id"))
{
  // display records if there are records to display
  if ($result->num_rows > 0)
  { 
    // display records in a table
    echo "<table width='415' cellpadding='0' cellspacing='0'>";
    // set table headers
    echo "<tr><td><img src='media/title_projectname.png' alt='Project Name' /></td>
        <td><img src='media/title_status.png' alt='Status'/></td>
      </tr>";
    echo "<tr>
        <td><div class='tpush'></div></td>
        <td>&nbsp;</td>
      </tr>"
    while ($row = $result->fetch_object())
    {
      echo "<tr>";
      echo "<td><a href='records.php?id=" . $row->id . "'>" . $row->item . "</a></td>";
      echo "<td>" . $row->priority . "</td>";
      echo "</tr>";
    }
    echo "</table>";
  }
  // if there are no records in the database, display an alert message
  else
  {
    echo "No results to display!";
  }
}
// show an error if there is an issue with the database query
else
{
   echo "Error: " . $mysqli->error;
}
// close database connection
$mysqli->close();
4

3 回答 3

1

一个好主意是将您的数据存储到一个简单的数组中,然后将它们显示在一个 2 列表中,如下所示:

$con = mysql_connect('$myhost', '$myusername', '$mypassword') or die('Error: ' . mysql_error());
mysql_select_db("mydatabase", $con);
mysql_query("SET NAMES 'utf8'", $con);

$q = "Your MySQL query goes here...";
$query = mysql_query($q) or die("Error: " . mysql_error());
$rows = array();
$i=0;

// Put results in an array
while($r = mysql_fetch_assoc($query)) {
    $rows[] = $r;
    $i++;
}

//display results in a table of 2 columns

echo "<table>";
for ($j=0; $j<$i; $j=$j+2)
{
echo "<tr>";
echo "<td>".$row[$j]."</td><td>".$row[$j+1]."</td>";
echo "</tr>";
}
echo "</table>";

mysql_close($con);
于 2012-04-17T02:06:56.240 回答
0
<table>
  <tr>
    <td>ProjectName</td>
    <td>Status</td>
    <td>ProjectName</td>
    <td>Status</td>
  </tr>
  <?php
     while($row = $result->fetch_object()) {
        echo "<tr>";
        echo "<td>".$row->ProjectName."</td>";
        echo "<td>".$row->Status."</td>";
        echo "<td>".$row->ProjectName."</td>";
        echo "<td>".$row->Status."</td>";      
        echo "</tr>";
     }
  ?>
</table>

这是图片上的东西。使用一点 CSS,您可以操作 tds。

于 2012-04-17T02:20:56.210 回答
0

您的函数应与此类似:

$query = "SELECT *
         FROM todo 
         ORDER BY id";
$result = $mysqli->query($query);

while($row = $result -> fetch_array()) {
   $feedback .= "<tr>\n<td>" . $row['item'] . "</td><td>" . $row['priority'] . "</td>\n</tr>";
}
return $feedback;

然后,在您的 HTML 中<table>已经设置好,并且您通常会在其中插入<td><tr>放置<?php echo $feedback?>(其中 $feedback 是 HTML 页面上从函数中检索 $feedback 的假定变量)。这不是一个完整的修复,您的代码很难阅读,但是从这里开始,您应该能够继续填写表格所需的所有额外信息,包括您的 CSS。

于 2012-04-17T02:34:44.093 回答