Как я могу отображать текст после каждых 10 строк запроса SQL? - PullRequest
2 голосов
/ 15 июля 2010

Скажите, что у меня есть запрос "выберите имя пользователя из пользователей".Я хочу вывести этот запрос на страницу PHP, но после каждой десятой строки я хочу отображать свой собственный текст.Есть идеи?и это будет продолжаться с 11-й записи.

Ответы [ 4 ]

8 голосов
/ 15 июля 2010
$count = 0;
while (false !== ($row = mysql_fetch_array($result))) {
  //output your row

  ++$count;
  if (($count % 10) == 0) {
    //output your special row
  }
}
1 голос
/ 15 июля 2010

Простейшим способом было бы вытащить таблицу данных назад, перебрать строки, записать каждую из них, отслеживая строку, в которой вы находитесь. Затем на каждой десятой итерации выписывайте свое собственное сообщение.

0 голосов
/ 15 июля 2010
create table #t
(
    UserName varchar(100)
)

declare @count int
declare @rows int
set @rows = 0

select @count = count(*) from  users
while (@count > 0 )
begin
    insert into #t
    select top 10 username from users where userid > @rows

    insert into #t select '******'

    set @count = @count - 1
    set @rows = @rows + 10
end

select * from #t

drop table #t
0 голосов
/ 15 июля 2010

Если вы используете PDO для выполнения запроса MySQL, вы можете создать переменную в PHP, а затем ограничить ваш запрос этой переменной.

вот неполный пример, но вы можете понять идею.

<?php
  $first = 0;
  $second = 9;
  $stmt = $db->prepare('select username from users limit :first, :second');

  $stmt->bindParam(':first', $first);
  $stmt->bindParam(':second', $second);

  $stmt->execute();

  #loop through your results here and then have a custom message, 
  #then change your variable values and execute the statement again. 
  #Repeat this until there are no more rows.   

?>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...