【问题标题】:Loop Script inside PHPPHP 中的循环脚本
【发布时间】:2015-06-05 16:08:51
【问题描述】:

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

我有这个代码:

<?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>

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

【问题讨论】:

  • 假设其他的东西,你是否要创建一个如此高的 do 循环,以至于它变成一个包含数以百万计的高级容器和脚本的页面?
  • 我所做的是我按下按钮它将更改输入的值并在代码已经完成的搜索页面中自动提交表单,唯一的问题是从数据库中获取正确的值更改输入并提交表单
  • 好的,请稍等。我会把一个可能有问题的答案放在一起

标签: php mysql repeat


【解决方案1】:

您正在循环中定义您的函数。一遍又一遍地。那么当你调用你的函数时,它应该调用哪一个呢?可能所有以前的都被上一个版本覆盖了。

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

除此之外,您还在循环中添加带有 ID 的元素。 ID 也需要是唯一的,因此您应该使用类或给它们一个唯一的 ID。

【讨论】:

  • 感谢您的信息,但我有点不知道该怎么做:S 您能用修复程序重写我的代码,以便我可以学习并在未来做,谢谢。
【解决方案2】:

一个真正的 php 程序员知道这一点(这意味着我不是一个)。离开 php 已经有一段时间了。

首先,我认为你永远不会从结果集中获得第一行(有人建议在这里)。你正在检查你是否有 rowcount 然后 plod 左右。我保留大错特错的权利。

试试类似的东西

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

}
else {
  echo "nada";
}
  1. 将函数的脚本放在顶部
  2. 不要像使用循环一样围绕主 div 部分创建

【讨论】:

    猜你喜欢
    • 2010-11-10
    • 2015-06-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-11-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多