显示数据库中的一行并移至下一列

时间:2016-04-22 13:10:28

标签: php html mysql sql

在我的数据库表中(id,book,cover,date,bookname .....)我使用这种方法显示每列的行内容,并且它工作正常。

<?php    
$dbhost = 'localhost';
$dbuser = 'root';
$dbpass = '';
$conn = mysql_connect($dbhost, $dbuser, $dbpass);

if(! $conn ) {
    die('Could not connect: ' . mysql_error());
}
$sql = "SELECT  * FROM books  ";
mysql_select_db('x');
$retval = mysql_query( $sql, $conn );

if(! $retval ) {
    die('Could not get data: ' . mysql_error());
}
while($row = mysql_fetch_array($retval, MYSQL_NUM)) { ?>

    <table>
    <tr>
    <td width="40%"><?php echo $row[0];?></td>
    <td width="40%"><?php echo $row[1];?></td>
    <td width="20%"><?php echo $row[2];?></td>
    </tr>
    </table>
<?
}  

mysql_free_result($retval);
mysql_close($conn);

但这次我想在每一行显示(例如:$ row [0])和 在下一个也是$ row [0]但是对于下一个column.example:

<table>
    <tr>
          <td width="40%"><?php echo $row[0];?></td>    //column1
          <td width="40%"><?php echo $row[0];?></td>    //column2
          <td width="20%"><?php echo $row[0];?></td>    //column3
    </tr>
</table>

我不知道是否应修改此代码或使用新代码。谢谢你的帮助。

1 个答案:

答案 0 :(得分:0)

如果您只需要显示一条记录,那么您可以先将值存储在数组中,然后再将其显示在浏览器中。

<?php

$email = array();
while($row = mysql_fetch_array($retval, MYSQL_NUM)) { 
    $email[]=$row[0];
}
echo "<table>";
foreach ($email as $key => $value) {
    echo "<tr>";
    echo "<td>$value</td>";
    echo "</tr>";
}
echo "</table>";
?>