Xwab
Форумыnavigate_nextНебольшие вопросы по PHP/MySQL

цикл. голова не варит
Сообщения
apple

третий день до утра сижу за компом, пишу тут. помогите с задачкой

если $var = 1 то $var2 = 15, если $var = 2 то $var2 = 30, если $var = 3, то $var2 = 45,

вообщем, если первая переменная становится на единицу больше, то ко второй переменной прибавляется +15. ну и так в цикле. спасибо за ранее

08 Июн 2013, 23:06
nitron

apple, $var2 = $var1*15

08 Июн 2013, 23:12
apple

спасибо. но не то оказывается( у меня постраничная навигация, хочу пронумеровать посты, но при переходе дальше чем на третью строку, нумерация смещяется(
---
если у кого кусок кода с постраничной навигацией и нумерацией постов? меня нумерация интересует=)

08 Июн 2013, 23:34
Lexan

apple, вот хорошая статья про реализацию постраничной навигации
http://www.php.su/articles/?cat=examples&page=062

09 Июн 2013, 8:57
Pisatel

Наковырял у себя в старом скрипте. Вместе с навигацией. Это вывод поиска, нумерация через нумерованные списки. Разберешься.
[php:1:9934f00d1e]$num = 10;
//позиций на одну страницу
$link .= 'cat.php?act=poisk&poisk='.$poisk.'';
if (isset($_GET['page'])) {$page = $_GET['page']; }
if (isset($_POST['page'])) {$page = $_POST['page']; }
$base1 = mysql_query("SELECT COUNT(*) FROM `cat_tov` WHERE `tov_nazv` LIKE '%$poisk%' OR `tov_opis` LIKE '%$poisk%'");
$temp = mysql_fetch_array($base1);
$posts = $temp[0];
$total = (($posts - 1) / $num) + 1;
$total = intval($total);
$page = intval($page);
if(empty($page) or $page < 0) $page = 1;
if($page > $total) $page = $total;
$start = $page * $num - $num;
if ($start < 0) { $start = 0;}
if ($page != 1) $pervpage = ' &nbsp;<a class="nav" href='.$link.'&amp;page=1>Первая</a>&nbsp;
&nbsp;<a class="nav" title=Предыдущая href='.$link.'&amp;page='. ($page - 1) .'>&laquo;</a>&nbsp; ';
if ($total > 1 and $page > 2) { $toch = ' &nbsp;<span class="ser"> .... </span>&nbsp; '; }
$page2 = $total - $page;
if ($total > 1 and $page2 >= 2) { $toch2 = ' &nbsp;<span class="ser"> .... </span>&nbsp; '; }
if ($page != $total) $nextpage = ' &nbsp;<a class="nav" title=Следующая href='.$link.'&amp;page='. ($page + 1) .'>&raquo;</a>&nbsp;
&nbsp;<a class="nav" href='.$link.'&amp;page=' .$total. '>Последняя</a>&nbsp; ';
if($page - 5 > 0) $page5left = ' &nbsp;<a class="nav" href='.$link.'&amp;page='. ($page - 5) .'>'.($page - 5).'</a>&nbsp; ';
if($page - 4 > 0) $page4left = ' &nbsp;<a class="nav" href='.$link.'&amp;page='. ($page - 4) .'>'.($page - 4).'</a>&nbsp; ';
if($page - 3 > 0) $page3left = ' &nbsp;<a class="nav" href='.$link.'&amp;page='. ($page - 3) .'>'.($page - 3).'</a>&nbsp; ';
if($page - 2 > 0) $page2left = ' &nbsp;<a class="nav" href='.$link.'&amp;page='. ($page - 2) .'>'.($page - 2).'</a>&nbsp; ';
if($page - 1 > 0) $page1left = ' &nbsp;<a class="nav" href='.$link.'&amp;page='. ($page - 1) .'>'. ($page - 1) .'</a>&nbsp; ';
if($page + 5 <= $total) $page5right = ' &nbsp;<a class="nav" href='.$link.'&amp;page='.($page + 5).'>'.($page + 5).'</a>&nbsp; ';
if($page + 4 <= $total) $page4right = ' &nbsp;<a class="nav" href='.$link.'&amp;page='.($page + 4).'>'.($page + 4).'</a>&nbsp; ';
if($page + 3 <= $total) $page3right = ' &nbsp;<a class="nav" href='.$link.'&amp;page='.($page + 3).'>'.($page + 3).'</a>&nbsp; ';
if($page + 2 <= $total) $page2right = ' &nbsp;<a class="nav" href='.$link.'&amp;page='.($page + 2).'>'.($page + 2).'</a>&nbsp; ';
if($page + 1 <= $total) $page1right = ' &nbsp;<a class="nav" href='.$link.'&amp;page='.($page + 1).'>'.($page + 1).'</a>&nbsp; ';
$baseob = mysql_query("SELECT * FROM `cat_tov` WHERE `tov_nazv` LIKE '%$poisk%' OR `tov_opis` LIKE '%$poisk%' LIMIT $start, $num",$db) or die(mysql_error());
if (empty($poisk)) { echo '<p class="alert">Обязательно введите ключевое слово для поиска</p>';}
else {
echo '<div style="background-color:#f5f5f5; padding:10px; margin:0 0 10px 0;">';
echo 'Найдено товаров: <strong>'.$posts.'</strong> по запросу: <strong>'.$poisk.'</strong>';
echo '</div>';
if (mysql_num_rows($baseob) > 0)
{
$rowob = mysql_fetch_array($baseob);
if ($total > 1) { if ($page==1) {$startol=1; } if ($page==2) {$startol=$num+1; }
if ($page>=3) {$startol=$num*($page-1)+1; } } else {$startol=1;}
echo '<ol START="'.$startol.'">';
//здесь содержимое
//<li>...</li>
echo '</ol>';
//while сделай сам, времени нет вырезать, там еще куча кода
// Вывод меню если страниц больше одной
if ($total > 1)
{
echo '<div class="navbar" align="center">';
echo $pervpage.$toch.$page5left.$page4left.$page3left.$page2left.$page1left.'<span class="nav"><strong>'.$page.'</strong></span>'.$page1right.$page2right.$page3right.$page4right.$page5right.$toch2.$nextpage;
echo '</div><br />';
}[/php:1:9934f00d1e]

09 Июн 2013, 10:40
Ответить на тему