2016-08-19 8 views
1

Я делаю эту таблицу для конкурса, так как вы можете видеть, что я извлекаю данные из базы данных, как из массива, дело в том, что есть только 3 призы и как 40 участников, я хочу показать каждого участника и призы, которые он выигрывает до сих пор, но после третьей позиции я хочу показать статус «Нет Aplica» рядом с именем, дело в том, что я не могу остановить счетчик от идти вверх, ни я могу сделать это определенное количество, так что остается на опцию «Нет» г. Назначение

<table style="display:inline;" class='table-personal table-striped'> 
    <thead> 
     <tr> 
     <th class="line-header">Posición</th> 
     <th>Premio</th> 
     <th>Nombre</th> 
     <th>Puntos Jul</th> 
     <th>Puntos Ago</th> 
     <th>Puntos Sep</th> 
     </tr> 
    </thead> 
    <tbody> 
    <?php 
     $i = 0; 
     $e = -1; 
     if ($result->num_rows > 0) { 
     while($row = $result->fetch_assoc()) { 
      $premio=array("$10.000", "$5.000", "$2.000", "No Aplica"); 
      echo "<tr class='posicion'>"; 
      echo "<td class='line-rows'>" . $premio[++$i] . "</td>"; 
      echo "<td>" . $row["nombre"] . "</td>"; 
      echo "<td>" . $row["puntos_julio"] . "</td>"; 
      echo "<td>" . $row["puntos_agosto"] . "</td>"; 
      echo "<td>" . $row["puntos_septiembre"] . "</td>"; 
      echo "</tr>"; 
      if ($i >= 3) { 
       $i = -1; 
      } 
     } 
     ?> 
    </tbody> 
</table> 

ответ

0

Вам нужно увеличить значение $i если значение $i меньше 3. в противном случае нет необходимости увеличивать значение $i. не

Делай так:

<?php 
    $i = 0; 
    $e = -1; 
    if ($result->num_rows > 0) { 
    while($row = $result->fetch_assoc()) { 
     $premio=array("$10.000", "$5.000", "$2.000", "No Aplica"); 
     echo "<tr class='posicion'>"; 
     echo "<td class='line-rows'>" . $premio[$i] . "</td>"; 
     echo "<td>" . $row["nombre"] . "</td>"; 
     echo "<td>" . $row["puntos_julio"] . "</td>"; 
     echo "<td>" . $row["puntos_agosto"] . "</td>"; 
     echo "<td>" . $row["puntos_septiembre"] . "</td>"; 
     echo "</tr>"; 
     if ($i < 3) { 
      $i++; 
     } 
    } 
    ?> 
+1

вас, сэр, у меня глубокую благодарность, не сарказм –

0

Вы можете попробовать это

if ($result->num_rows > 0) { 
    while($row = $result->fetch_assoc()) { 
     $premio=array("$10.000", "$5.000", "$2.000", "No Aplica"); 
     echo "<tr class='posicion'>"; 
     if ($i < 3) { 
      echo "<td class='line-rows'>" . $premio[$i] . "</td>"; 
     } else { 
     echo "<td class='line-rows'>" . $premio[3] . "</td>"; 
     } 
     echo "<td>" . $row["nombre"] . "</td>"; 
     echo "<td>" . $row["puntos_julio"] . "</td>"; 
     echo "<td>" . $row["puntos_agosto"] . "</td>"; 
     echo "<td>" . $row["puntos_septiembre"] . "</td>"; 
     echo "</tr>"; 
     $i++; 
}