Помогите разобраться с циклом

CyberX
На сайте с 08.03.2008
Offline
51
2151

цикл вот такой:

$result = mysql_query ("SELECT * FROM history WHERE key='$id'");

$myrow = mysql_fetch_array ($result);

do {

printf ("%s",$myrow['date']); }

while ($myrow = mysql_fetch_array ($result));

Нужно чтобы после каждых 10 удачных циклов вставлялся тег к примеру <br>.

Заранее спасибо.

Шустрый хостинг (http://www.colocat.ru) за нормальные деньги (Москва). 30 дней тестовый период. Рекомендую копирайтера aronskaya (/ru/users/73753). Отличные авторские тексты.
N
На сайте с 06.05.2007
Offline
419
#1

считайте строки и делите нацело на 10, если остаток = 0 - пора выводить :


$i=1;
do {
if ( ! ( $i % 10 ) ) { print "<br>";}
$i++;
..
Кнопка вызова админа ()
CyberX
На сайте с 08.03.2008
Offline
51
#2

netwind, пример можно а то что-то ни черта не понимаю.

Получается бред какой-то.

DI
На сайте с 03.01.2007
Offline
123
#3

CyberX, "если остатка от деления на 10 не существует, то вставляем <br>".

Остаток от деления не существует через каждые 10 итераций, т.к. счетчик инкрементируется при проходе цикла.

Высказывание идиотского утверждения требует на порядок меньше усилий, чем его последовательное и обоснованное опровержение и более того, иногда это опровержение вообще невозможно. © (http://zhurnal.lib.ru/s/shapiro_m_a/raspidiota.shtml)
[Удален]
#4

вообще цикл вы как то странно пишете. Чувствуется что раньше прогали на Сях =)


$result=mysql_query(...);
$i=0;
while ($k=mysql_fetch_assoc($result))
{
echo $k['date'];
if ((++$i)%10==0) echo "<br/>";
}

и все =)

N
На сайте с 06.05.2007
Offline
419
#5

Ну вот пусть будет так, для вашего примера и с более очевидным условием :


$result = mysql_query ("SELECT * FROM history WHERE key='$id'");
$myrow = mysql_fetch_array ($result);
$i=1;
do {
printf ("%s",$myrow['date']);
if ( ($i % 10) ==0 ) { print "<br>";}
$i=$i+1;
}while ($myrow = mysql_fetch_array ($result));
CyberX
На сайте с 08.03.2008
Offline
51
#6

Всё спасибо, разобрался ...

$result = mysql_query ("SELECT * FROM history WHERE key='$id'");

$myrow = mysql_fetch_array ($result);

$i=1;

do {

if ( ! ( $i % 10 ) ) { print "<br>";}

$i++;

printf ("%s",$myrow['date']); }

while ($myrow = mysql_fetch_array ($result));

Ещё раз спасибо.

[Удален]
#7

$i++ можно прям в условии записать, да и принтф в пхп это знаете ли, несколько экстравагантно для таких целей =)

CyberX
На сайте с 08.03.2008
Offline
51
#8

neolord, я данный цикл привел в качестве примера. А что вы можете посоветовать вместо printf ? Простой print или echo ? :)

[Удален]
#9

ну для вывода тупо строк канешн echo, принтф это красивый такой вариант для распечатки сложных структур данных

CyberX
На сайте с 08.03.2008
Offline
51
#10

neolord, я думаю я printf тут правильно выбрал ?


printf ("<b>Жалобы при поступлении:</b><br>%s<br><b>VITE:</b><br>%s<br><b>MORBI:</b><br>%s<br><b>Предварительный диагноз:</b><br>%s<br><b>Назначенные исследования:</b><br>%s<br><b>Процедуры и манипуляции:</b><br>%s<br><b>Использованные материалы:</b><br>%s<br><b>Выданные рекомендации:</b><br>%s<br><b>Дата визита:</b> %s<br><b>Дата повторного приема:</b> %s<br><b>Принимающий врач:</b> %s
<table>
<tr>
<td width='1000px'></td>
<td align='right'><form target='_blank' id='print' name='print' method='post' action='print_client.php'>
<label>
<input type='submit' name='print' id='print' value='Распечатать назначение для клиента' />
<input name='id_client' type='hidden' value='$id_client' />
<input name='id' type='hidden' value='$id' />
<input name='num' type='hidden' value='%s' />
</label>
</form>
</td>
<td align='right'><form id='edit' name='edit' method='post' action='update_new_history.php'>
<label>
<input type='submit' name='edit' id='edit' value='Редактировать' />
<input name='id_client' type='hidden' value='$id_client' />
<input name='id' type='hidden' value='$id' />
<input name='num' type='hidden' value='%s' />
</label>
</form></td>
</tr>
</table>
<hr>
", $myrow1['jaloba'], $myrow1['vite'], $myrow1['morbi'], $myrow1['pre_diag'], $myrow1['research'], $myrow1['materials'], $myrow1['procedur'], $myrow1['recomend'], $myrow1['date'], $myrow1['data_povtor'], $myrow1['doctor'], $myrow1['num'], $myrow1['num']); }

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий