为什么第一条记录为空?它不是空的,第一个记录成为第二个记录,第一个记录是空的,它似乎无处不在
这是代码
mysql_select_db($database_webiceberg, $webiceberg);
$query_services = "SELECT
services.dynamic_price,
services.database_price
from services
where lang=2 " ;
$services = mysql_query($query_services, $webiceberg) or die(mysql_error());
这部分代码在正文中
<?php do {
$title = $row_services['dynamic_price'];
$database_price = $row_services['database_price'];
$id = $row_services['id_services'];
?>
<tr id="<?php echo $id;?>">
<td class="matrixItem" >
<a href="WebDesign.php?cattegory=<?php echo $cattegory; ?>" id="nigga"><?php echo $title; ?></a>
</td>
</tr>
<?php } while ($row_services = mysql_fetch_assoc($services));
?>
我删除了部分代码,以便为其提供更多语法,并且删除的代码是多余的
答案 0 :(得分:4)
do{}
阻止将在while()
之前运行,因此$row_services
首先为空。
在$row_services = mysql_fetch_assoc($services)
do
<?php
while ($row_services = mysql_fetch_assoc($services)):
$title = $row_services['dynamic_price'];
$database_price = $row_services['database_price'];
$id = $row_services['id_services'];
?>
<tr id="<?php echo $id;?>">
<td class="matrixItem" >
<a href="WebDesign.php?cattegory=<?php echo $cattegory; ?>" id="nigga"><?php echo $title; ?></a>
</td>
</tr>
<?php endwhile; ?>
答案 1 :(得分:2)
你可以尝试一下吗?
<?php
while ($row_services = mysql_fetch_assoc($services)) {
$title = $row_services['dynamic_price'];
$database_price = $row_services['database_price'];
$id = $row_services['id_services'];
?>
<tr id="<?php echo $id;?>">
<td class="matrixItem" ><a href="WebDesign.php?cattegory=<?php echo $cattegory; ?>" id="nigga"><?php echo $title; ?></a></td>
</tr>
<?php
}
?>
答案 2 :(得分:1)
您应该使用while
语法而不是do...while
。在do...while
中,在第一次迭代时未获取结果,并且您有一个空白记录。
如果您使用while
,则会在第一次迭代时获得数据。
答案 3 :(得分:0)
它什么都不是,因为你在while ($row_services = mysql_fetch_assoc($services))
取了它
并且它在第一次执行后起作用,因此在那时,记录为空或仅为空。使用入口控制循环:)