在PHP中循环脚本

时间:2015-06-05 16:08:51

标签: php mysql repeat

我有这个问题并且无法解决它希望得到你们的帮助,所以这里是:

我有这段代码:

<?php if (mysql_num_rows($tournaments) !=0){
do { ?>
<div id="mainContainer">
    <div id="leftContainer">
        <img src="images/tournaments/<?php echo $row_tournaments['logo']; ?>.png">
    </div>
    <div id="rightContainer">
        <div id="rightContent">
            <p><?php echo $row_tournaments['description']; ?></p>
            <a href="tournaments.php?id_tournament=<?php echo $row_tournaments['id_tournament']; ?>">
                <div id="galleryButton">
                    <p>Entrar no torneio</p>
                </div>
            </a>
        </div>
        <div id="rightDetails">
            <i class="fa fa-gamepad"></i>
            <a href="games.php?id_game=<?php echo $row_tournaments['id_game']; ?>">
                <?php echo $row_tournaments['game']; ?>
            </a>
            <br>
            <i class="fa fa-calendar-o"></i>
            <a href="#">
                <?php echo $row_tournaments['date']; ?>
            </a>
            <br>
            <i class="fa fa-pencil-square-o"></i>
            <a href="tournaments.php?id_tournament=<?php echo $row_tournaments['id_tournament']; ?>#disqus_thread">
                Sem comentários
            </a>
            <br>

            <script type="text/javascript">
            function giveThatInputAValue(){
                var elem = document.getElementById("search");
                elem.value = "<?php echo $row_tournaments['city']; ?>";
                /*document.forms["form"].submit();
            */}
           </script>
           <i class="fa fa-map-marker"></i>
           <a onClick="giveThatInputAValue()">
               <?php echo $row_tournaments['city']; ?>
           </a>
           <br>

           <img src="images/<?php echo $row_tournaments['online']; ?>.png">
           <a href="#">
               <?php echo $row_tournaments['online']; ?>
           </a>
       </div>
   </div>
</div>
<?php } while ($row_tournaments = mysql_fetch_assoc($tournaments));
} else {
?>
<div id="noresults">
    <p>Sem torneios</p>
</div>
<?php } ?>

一切都很好,但这部分根本没有循环:

<script type="text/javascript">
function giveThatInputAValue(){
    var elem = document.getElementById("search");
    elem.value = "<?php echo $row_tournaments['city']; ?>";
    /*document.forms["form"].submit();*/
}
</script>

不知道为什么,有人请帮忙。 Cumps。

2 个答案:

答案 0 :(得分:1)

您正在循环中定义您的函数。一遍又一遍地。所以当你打电话给你的功能时,应该拨打哪一个?可能以前的所有版本都被上一版本覆盖了。

您应该在任何循环之外定义您的函数,然后使用循环中可用的参数调用它。

除此之外,您还在循环中添加ID为ID的元素。 ID也必须是唯一的,因此您应该使用类或为它们提供唯一的ID。

答案 1 :(得分:1)

一个真正的php程序员知道这个(意思是我不是一个)。离php一段时间了。

好吧首先,因为我看到你从来没有从结果集得到你的第一行(有人在这里建议)。你正在检查你是否有行数,然后就可以了。我保留非常错误的权利。

尝试类似

的内容
if ($result) {
  while($row = mysql_fetch_array($result)) {
    // output $row info
  }

}
else {
  echo "nada";
}
  1. 将您的脚本放在顶部
  2. 不要围绕主要的div部分创作,就像你有一个循环