我有个时间循环。它应该循环遍历数据库表并输出所找到的结果,这样做很好。但是,它也复制了while循环中的HTML (将其输出两次,一次反向输出?)。
见:
1) Jazzminder声景2) 3) 1) Jazzminder Dandelion 3)
应改为:
1) Jazzminder声景2) Jazzminder Dandelion 3)
我尝试过修改和重写代码,但是我无法隔离这个问题。我以前从没遇到过这个问题。
这是代码块:
<p> <a href="promote_next_step.php?promote=<?php echo $_GET['promote']?>">
<strong> [More To Next Step]</strong></a></p>
<strong><font color="gray">Included so far:</font></strong><br/>
<?php
$sql2="SELECT * FROM `promote_track_lists` WHERE `promo_title`='". $_GET['promote1']."'";
$result2=mysql_query($sql2);
while($row2 = mysql_fetch_assoc($result2)){
?>
1) <font color="orange"><strong><?php echo $row2['artist_name1'] ?> <?php echo $row2['track_title1'] ?></strong></font>
2) <font color="orange"><strong><?php echo $row2['artist_name2'] ?> <?php echo $row2['track_title2'] ?></strong></font>
3) <font color="orange"><strong><?php echo $row2['artist_name3'] ?> <?php echo $row2['track_title3'] ?></strong></font>
<?php
}
?>谢谢你的回复!!问题是,我有另一页,它可以很好地从数据库中提取信息:
if (isset ($_GET['promote1']) === true) {
$sql3="SELECT * FROM `promote_track_lists` where `promo_title` ='".$_GET['promote1']."' ";
$result3= mysql_query ($sql3);
while ($row3 = mysql_fetch_assoc ($result3)) {
?>
<div id="promotion_files">
<!------- track1 ------->
<?php if ($row3['iframe1']) {?>
<div class="promotion_track_name"><strong><?php echo $row3['artist_name1'] ?>-<?php echo $row3['track_title1'] ?></strong></div>
<?php echo $row3['iframe1']?>
<?php
if (isset ($_POST['submit'])===true && empty ($_POST['feedback']) === false) {
?>
<a href="mp3_download.php?promote1=<?php echo $row['title'] ?>"><img src='images/design images/iPodDownload.png' /></a>
<?php
}
}
?>
<!------- track2 -------> 它这样做了20次,没有问题,但出于某种原因,它在另一个页面上循环了HTML和输出(只有html)两次。我尝试使用数据库,以便条目彼此之间是完全唯一的,但这样就可以使用一个查询来提取所有内容。...If说得通。
发布于 2013-05-11 01:16:24
我要尝试一下,但是如果没有完整的代码,我可能是错的。我猜问题在于你的MySQL。根据你想要输出的内容。一张唱片会像这样
artist_name1、artist_name2、artist_name3、track_title1、track_title2、track_title2、track_title3
但是,根据您所声明的输出显示方式,您的表很可能看起来类似于这个artist_name \ track_title
你能给我看看你的桌子是什么样子吗?
它不是相反地显示东西,而是显示所有3行3次,但你每次只看到一组值。所以你看到1-数据-2-然后12-数据-然后12,3-数据-我希望这是有意义的
因此,看看您的图像和您发布的附加代码,我注意到第二个代码块上的条件不是在第一个代码块中。
<?php if ($row3['iframe1']) {?>所以我想问你的是这个。如果iframe2为空,则在数据库中。artist2是空白吗?如果是这样的话,并且根据您在原始电子邮件中所描述的情况,它看起来像artist1、title1和iframe1都包含值,但是该行的其余值是空的,在表中的下一条记录中,artist2、title2和iframe2被填充,其余的字段是空的,第三行的值也是相同的.如果是这样的话,那么您需要对while循环执行以下操作.
while($row2 = mysql_fetch_assoc($result2)){
if ($row2['iframe1']) {?>
1) <font color="orange"><strong><?php echo $row2['artist_name1'] ?> <?php echo $row2['track_title1'] ?></strong></font>
<?php else if ($row2['iframe2']) {?>
2) <font color="orange"><strong><?php echo $row2['artist_name2'] ?> <?php echo $row2['track_title2'] ?></strong></font>
<?php else if ($row2['iframe3']) {?>
3) <font color="orange"><strong><?php echo $row2['artist_name3'] ?> <?php echo $row2['track_title3'] ?></strong></font>
<?php }} ?>
发布于 2013-05-11 01:27:35
<p> <a href="promote_next_step.php?promote=<?php echo $_GET['promote']?>">
<strong> [More To Next Step]</strong></a></p>
<strong><font color="gray">Included so far:</font></strong><br/>
<?php
$sql2="SELECT * FROM `promote_track_lists` WHERE `promo_title`='".$_GET['promote1']."'";
$result2=mysql_query($sql2);
$s=1;
while($row2 = mysql_fetch_assoc($result2))
{
echo $s.') <font color="orange"><strong>'.$row2['artist_name1'].$row2['track_title1'] .'</strong></font>';
$s++;
}
?>我觉得你的数据库结构搞砸了。每次插入时,请将表结构和要输入的数据张贴到列中。
https://stackoverflow.com/questions/16492702
复制相似问题