3

如何为每个获取行添加自动编号?我想自动添加新号码作为序列号,每个从 mysql 数据库中获取行?

<?php
$i=0;
$query=mysql_query("SELECT * FROM cart
WHERE email='".$_SESSION['email']."'");

while($rowdata1=mysql_fetch_array($query))
$i++;
{
?>

<?php echo $i ?> // here i want to add serial number
<?php echo $rowdata1['itemcode']?>
<?php echo $rowdata1['product']?>
<img src="admin/<?php echo $rowdata1['image'] ?>"/>
<?php echo $rowdata1['price']?>
<?php echo $rowdata1['size']?></font>
<?php echo $rowdata1['total']?>
<?php echo $rowdata1['date']?>
<?php $rowdata1['blueexnum']?>
<?php echo $rowdata1['blueexstatus']?>
<?php }?>                   

问题现在解决了谢谢

<?php
$i=0;
$query=mysql_query("SELECT * FROM cart
WHERE email='".$_SESSION['email']."'");
while($rowdata1=mysql_fetch_array($query))
{
$i++;
?>
4

3 回答 3

0

使用 mysql 为您执行此操作。将您的查询更改为

SET @row_number=0;
SELECT @row_number:=@row_number+1 AS row_number, cart.*
FROM cart
WHERE email=?"

然后,当您使用它时,只需将其作为另一列回显

<?php echo $rowdata1['row_number']?>

附带说明一下,不要在不转义的情况下使用 $_SESSION['email'] 。

于 2013-05-15T23:33:35.603 回答
0

你快到了,将代码更改为:

$h = '';
$i = 0;
while($rowdata1=mysql_fetch_array($query)) {
    $i++;
    $h .= "$i) $rowdata1[itemcode] $rowdata1[product] ";
    $h .= "<img src=\"admin/$rowdata1[image]\"/> ";
    $h .= "$rowdata1[price] $rowdata1[size] $rowdata1[total] ";
    $h .= "$rowdata1[date] $rowdata1[blueexnum] $rowdata1[blueexstatus]<br />";
}
echo $h;

当然,您可以echo像在代码中那样使用。虽然将整个字符串构建$h并作为一个整体回显它通常会更快。
您可能希望使用 a<table>以更结构化的方式显示数据。

于 2013-05-15T23:24:50.947 回答
-1
<?php>
    //set counter to 1
    $counter = 1;
    <thead>
    <tr>
    th>No.</th>
    <th>REGISTRATION #</th>
    <th>SURNAME<`enter code here`/th>
    </tr>
    <tr>
    <td><?php echo $counter; ?></td>
    <td><?php echo htmlentities($class['registration']); ?></td>
    <td><?php echo htmlentities($class['sirname']); ?></td>
    </tr>
    $counter++;
    </tbody>

?>
于 2018-04-29T03:29:37.857 回答