|
|
|
|
|
для: kireyev
(22.12.2010 в 10:33)
| | а вы сортировали по полю order?
upd
если даже все отсортировано, все равно 5 и 9 вы потеряете.
если сейчас $portfolio['order'] == 5, вы выходите из цикла
<? while ($portfolio = mysql_fetch_array($sql_portfolio) AND $portfolio['order'] < 5) { echo $portfolio['order']; ?>
<a href="/portfolio/<? echo $portfolio['filename']; ?>" rel="<? echo $portfolio['rel']; ?>" onclick="return jsiBoxOpen(this)" title="<? echo $portfolio['title']; ?>"><img src="/portfolio/<? echo $portfolio['filename']; ?>" width="151" height="100" alt="<? echo $portfolio['title']; ?>" /></a><? } ?>
а тут вы берете следующую запись(c order==6), не обработав с order==5
<? while ($portfolio = mysql_fetch_array($sql_portfolio) AND $portfolio['order'] > 4 AND $portfolio['order'] < 9) { echo $portfolio['order']; ?>
<a href="/portfolio/<? echo $portfolio['filename']; ?>" rel="<? echo $portfolio['rel']; ?>" onclick="return jsiBoxOpen(this)" title="<? echo $portfolio['title']; ?>"><img src="/portfolio/<? echo $portfolio['filename']; ?>" width="151" height="100" alt="<? echo $portfolio['title']; ?>" /></a><? } ?>
аналогично с 9 | |
|
|
|
|
|
|
|
для: ONYX
(22.12.2010 в 10:22)
| | Сделал проверку на каждом этапе:
echo mysql_num_rows($sql_portfolio);
|
Все нормально, ничего не вываливается. Проблема не решена. | |
|
|
|
|
|
|
|
для: kireyev
(22.12.2010 в 10:10)
| | - | |
|
|
|
|
|
|
|
для: kireyev
(22.12.2010 в 10:10)
| | меня смущает сама конструкция
<? while ($portfolio = mysql_fetch_array($sql_portfolio) AND $portfolio['order'] > 8) ?>
|
мне кажется на первой итерации значение в $portfol просто теряется, попробуйте проверить все ли значения возвращает вам sql запрос | |
|
|
|
|
|
|
|
для: ONYX
(22.12.2010 в 09:57)
| | я понимаю так:
1 цикл: <5 выводятся 1,2,3,4
2 цикл: >4 <9 выводятся 5,6,7,8
3 цикл: >8 выводятся 9,10,11,12 и т.д.
Но этого не происходит. 5 и 9 теряются
Упрощу код:
<? while ($portfolio = mysql_fetch_array($sql_portfolio) AND $portfolio['order'] < 5) { echo $portfolio['order']; } ?>
<? while ($portfolio = mysql_fetch_array($sql_portfolio) AND $portfolio['order'] > 4 AND $portfolio['order'] < 9) { echo $portfolio['order']; } ?>
<? while ($portfolio = mysql_fetch_array($sql_portfolio) AND $portfolio['order'] > 8) { echo $portfolio['order']; ?>
|
| |
|
|
|
|
|
|
|
для: kireyev
(22.12.2010 в 09:05)
| | Код голимый кошмар.
Суть в том что вы указываете значения в диапазоне, в первой проверке меньше 5 (<5), тоеть 5-я запись уже не выведется (тоесть должно быть <=5 что бы запись была выведена)
Далее во втором цикле диапазон между (>4 и < 9 ), не выводится 9 запись, конечно она исключена из диапазона, та же проблема и в последнем цикле | |
|
|
|
|
|
|
|
<? if (mysql_num_rows($sql_portfolio)>0) { ?><div id="img_line"><? } ?>
<? while ($portfolio = mysql_fetch_array($sql_portfolio) AND $portfolio['order'] < 5) { echo $portfolio['order']; ?>
<a href="/portfolio/<? echo $portfolio['filename']; ?>" rel="<? echo $portfolio['rel']; ?>" onclick="return jsiBoxOpen(this)" title="<? echo $portfolio['title']; ?>"><img src="/portfolio/<? echo $portfolio['filename']; ?>" width="151" height="100" alt="<? echo $portfolio['title']; ?>" /></a><? } ?>
<? if (mysql_num_rows($sql_portfolio)>0) { ?></div><? } ?>
<? if (mysql_num_rows($sql_portfolio)>4) { ?><div id="img_line"><? } ?>
<? while ($portfolio = mysql_fetch_array($sql_portfolio) AND $portfolio['order'] > 4 AND $portfolio['order'] < 9) { echo $portfolio['order']; ?>
<a href="/portfolio/<? echo $portfolio['filename']; ?>" rel="<? echo $portfolio['rel']; ?>" onclick="return jsiBoxOpen(this)" title="<? echo $portfolio['title']; ?>"><img src="/portfolio/<? echo $portfolio['filename']; ?>" width="151" height="100" alt="<? echo $portfolio['title']; ?>" /></a><? } ?>
<? if (mysql_num_rows($sql_portfolio)>4) { ?></div><? } ?>
<? if (mysql_num_rows($sql_portfolio)>8) { ?><div id="img_line"><? } ?>
<? while ($portfolio = mysql_fetch_array($sql_portfolio) AND $portfolio['order'] > 8) { echo $portfolio['order']; ?>
<a href="/portfolio/<? echo $portfolio['filename']; ?>" rel="<? echo $portfolio['rel']; ?>" onclick="return jsiBoxOpen(this)" title="<? echo $portfolio['title']; ?>"><img src="/portfolio/<? echo $portfolio['filename']; ?>" width="151" height="100" alt="<? echo $portfolio['title']; ?>" /></a><? } ?>
<? if (mysql_num_rows($sql_portfolio)>8) { ?></div><? } ?>
|
Всего значений в БД 12 штук. 5 и 9 не выводятся на страницу. Почему? | |
|
|
|
|