применить код ко всем зацикленным элементам, кроме последнего

0

Im зацикливается на некоторых результатах mysql и вам нужно добавить <span id=bottom></span> к каждому из них, кроме последней строки, самый простой способ сделать это?

Мне нужно подсчитывать строки, а затем использовать счетчик и оператор if/else? Или есть более простой способ?

  • 9
    Поле id в html должно быть уникальным. рассмотрите класс или имя вместо этого.
  • 0
    это Javascript или JQuery вариант?
Показать ещё 1 комментарий
Теги:

4 ответа

4

Попробуйте что-то вроде этого:

$result = mysql_query($sql);
$list = array();
while($row = mysql_fetch_assoc($result))
{
  $list[] = $row;
}
$lastItem = array_pop($list);
foreach($list as $item) {
  echo sprintf('<span id="bottom">%s</span>', $item['value']);
}
// do something with the last item..

Не очень короткий, но это будет трюк. В качестве альтернативы вы могли бы сделать то, что вы предложили:

$result = mysql_query($sql);
$num = mysql_num_rows($result);
for($i = 0; $i < $num-1; $i++) {
  $element = mysql_fetch_assoc($result);
  // echo here..
}
$item = mysql_fetch_assoc($result); // fetch last item..

С наилучшими пожеланиями, Fabian

  • 0
    Мой ответ удален, так как ваш был тем же, но вы отправили первым. : D
0

Я не эксперт PHP, но можете ли вы поместить каждую строку в массив? Таким образом, чтобы узнать длину, и вы можете пройти через массив.

0

Вы можете избежать копирования всех данных перед их обработкой, если вы предварительно заработаете запись перед ее печатью (или наоборот: обработайте ранее взятую запись)

foreach( $pdo->query('SELECT x FROM foo') as $r) {
  if ( isset($row) ) {
    echo '<span>', $row['x'], '</span>';
  }
  $row = $r;
}
if ( isset($row) ) {
  echo $row['x'];
}
0
$result = mysql_query($sql);
$list = array();
while($row = mysql_fetch_assoc($result))
  $list[] = $row;

foreach(array_slice($list, 0, -1) as $item) {
  echo sprintf('<span id="bottom">%s</span>', $item['value']);
}
// do something with the last item..

Ещё вопросы

Сообщество Overcoder
Наверх
Меню