使用多个MySQL行和For循环 - 无法正常工作

时间:2015-10-25 06:01:12

标签: php mysql for-loop

我试图从MySQL打印最近的3个帖子(行)。我使用一个<item android:id="@+id/action_checkbox" app:actionViewClass="android.widget.CheckBox" android:title="@string/action_check" app:showAsAction="always" /> 计数3次,为每个帖子(行)打印3个DIVS。 然后我使用for loop循环打印出MySQL行。问题是我在一个DIV中打印出所有三行。

以下是代码:

for each

如何将每个MySQL行打印到for循环创建的每个DIV中?有什么想法吗?

更新

以下是结果: https://gyazo.com/5a91ed6a3837c0293c7504525ef86681

如您所见,所有行都在第一个DIV中打印。也就是说,第一次运行循环时,它会打印出其中的所有行。但循环的第二次循环运行,它不打印出第二个div内的任何东西。它应该从FIRST DIV中的SECOND DIV和第一行mysql中的mysql打印出SECOND行。和THIRD DIV中的第三行mysql

2 个答案:

答案 0 :(得分:3)

如果我的问题得到了解决,那么你首先应该不会使用它 打印三个div,其中包含一个结果:

    <?php
$counter = 0;
    if($result && mysqli_fetch_assoc($result)>0)
            foreach($result as $row) :
        if($counter >= 3)
            break;
        ?>
        <div id="outer-box">
            <div id="postImage-wrapper">
                image
            </div>
            <div id="postContent-wrapper">
                <h3> This is an Example post </h3>
                <span id="postInfo-wrapper">Author | 22/10/2015 | Xbox | 3 Comments</span><br />
                <?php
                echo '<div onclick="alert(\''.$row['reviewContent'].'\');">'.substr($row['reviewContent'], 0, 300).'</div>';
                //  echo $row['reviewContent']. '<br /><br />';
                ?>
            </div>

            <div id="postRating-wrapper">
                7.7
            </div>
        </div>


        <?php
    $counter++;
    endforeach;
    ?>

答案 1 :(得分:0)

像这样更改您的代码。

  <?php
      if($result && mysqli_fetch_assoc($result)>0) {
           $i = 1;
        foreach($result as $row) { ?>
         <div id="outer-box">
             <div id="postImage-wrapper">
                 image
             </div>
           <div id="postContent-wrapper">
              <h3> This is an Example post </h3>
              <span id="postInfo-wrapper">Author | 22/10/2015 | Xbox | 3 Comments</span><br />

              <?php  echo '<div onclick="alert(\''.$row['reviewContent'].'\');">'.substr($row['reviewContent'], 0, 300).'</div>';
       ?>
           </div>

        </div>

        <div id="postRating-wrapper">
            7.7
        </div>

     <?php

      if($i == 3)
            break;
      $i++;
      }// end of foreach
      }// end of if()
      ?>