-2

你好,有人可以看看我的代码吗?我想我没有忘记关闭标签的所有内容我真的不知道为什么每次单击显示所有按钮时它只显示第一个值。我认为最后一个回声的第三和第四个有问题。因为问题出在那个部分。我有多个数据假设要显示,但它只显示我插入的第一个值。到目前为止,这是我的代码。

$a=$_POST['dayfrom'];
$b=$_POST['dayto'];

    $result1 = mysql_query ("SELECT s.*, r.name, r.pcode
    FROM salessumarry s
    JOIN rsales r ON s.reciept = r.reciept
    WHERE s.register_mode = 'sales'
    AND s.date BETWEEN '$a' AND '$b' group by id");

    while($row = mysql_fetch_array($result1))
    {



        echo '<tr>';
        echo '<td style="border-color:#000000; border-style:solid; border-width:1px;"><div align="center">'.$row['date'].'</div></td>';
        echo '<td style="border-color:#000000; border-style:solid; border-width:1px;"><div align="center">'.$row['reciept'].'</div></td>';
        echo '<td style="border-color:#000000; border-style:solid; border-width:1px;"><div align="center"></div></td>';
        echo '</div></td>';
        echo '<td style="border-color:#000000; border-style:solid; border-width:1px;">'.$row['total_purchased'].'<div align="center">';
        echo '</div></td>';
        echo '<td style="border-color:#000000; border-style:solid; border-width:1px;"><div align="center">'.$row['transactioncode'].'</div></td>';
        echo '<td style="border-color:#000000; border-style:solid; border-width:1px;"><div align="center"></div></td>';
        echo '<td style="border-color:#000000; border-style:solid; border-width:1px;"><div align="center">';
        $eee=$row['total'];
        echo formatMoney($eee, true);

        echo '<td style="border-color:#000000; border-style:solid; border-width:1px;"><div align="center">'.$row['profit'].'</div></td>';
        echo '<td style="border-color:#000000; border-style:solid; border-width:1px;"><div align="center">'.$row['mode'].'</div></td>';
        echo '<td style="border-color:#000000; border-style:solid; border-width:1px;"><div align="center">'.$row['total'].'</div></td>';
        echo '</div></td>';

        echo '<tr>';
        echo '<th style="border-color:#000000; border-style:solid; border-width:1px;font-size:10px;background-image:url(images/buts3.png);color:white"">Product Code</th>';
        echo '<th style="border-color:#000000; border-style:solid; border-width:1px;font-size:10px;background-image:url(images/buts3.png);color:white"">Name</th>';
        echo '<th style="border-color:#000000; border-style:solid; border-width:1px;font-size:10px;background-image:url(images/buts3.png);color:white"">Description</th>';
        echo '<th style="border-color:#000000; border-style:solid; border-width:1px;font-size:10px;background-image:url(images/buts3.png);color:white"">Category</th>';
        echo '<th style="border-color:#000000; border-style:solid; border-width:1px;font-size:10px;background-image:url(images/buts3.png);color:white"">Quantity Purchased</th>';
        echo '<th style="border-color:#000000; border-style:solid; border-width:1px;font-size:10px;background-image:url(images/buts3.png);color:white"">Sub total</th>';
        echo '<th style="border-color:#000000; border-style:solid; border-width:1px;font-size:10px;background-image:url(images/buts3.png);color:white"">Total</th>';
        echo '<th style="border-color:#000000; border-style:solid; border-width:1px;font-size:10px;background-image:url(images/buts3.png);color:white"">Tax</th>';
        echo '<th style="border-color:#000000; border-style:solid; border-width:1px;font-size:10px;background-image:url(images/buts3.png);color:white"">Profit</th>';
        echo '<th style="border-color:#000000; border-style:solid; border-width:1px;font-size:10px;background-image:url(images/buts3.png);color:white"">Discount</th>';
        echo'</tr>';


        echo '<tr>';
        echo '<th style="border-color:#000000; border-style:solid; border-width:1px;"><div align="center">'.$row['pcode'].'</div></th>';
        echo '<th style="border-color:#000000; border-style:solid; border-width:1px;"><div align="center">'.$row['name'].'</div></th>';                             
        echo '</tr>';                       

    echo '</tr>';

 };


mysql_close($con);
?>  
4

1 回答 1

-1

使用mysql_fetch_row而不是mysql_fetch_array

后者将所有行作为数组获取。

相反,您一次只需要一行。

你也得到一个数字数组(不是键值对)

http://php.net/manual/en/function.mysql-fetch-row.php

从上面的页面你会看到mysql扩展已被弃用,你应该转移到mysqli

此外,许多人评论您的代码不适合生产环境,因为容易受到 sql 注入的影响。

您应该使用准备好的语句:

http://php.net/manual/en/mysqli.quickstart.prepared-statements.php

于 2013-09-29T09:15:35.267 回答