{% else-1 %}
Обновить | Подписаться | Поднять тему
Чтобы выполнить действие авторизируйтесь или пройдите регистрацию на сайте.
1.
Hatsune Miku * [мошенник] 22.23
[автор] (16 фев 2014, 20:04) [0/0] [0] [отв] [спам] [под] +1 | -1

кароче вывожу записи из таблы news в табле всего одна запись
код ниже вывожу я через while а он мне одну хапись на 100500 строк *
<?

$num = 25;
// Извлекаем из URL текущую страницу
$page = $_GET[\'page\'];
// Определяем общее число сообщений в базе данных
$result = mysqli_fetch_row(mysqli_query($mysqli, \"SELECT COUNT(*) FROM news\"*);
$posts = $result[\'0\'];
// Находим общее число страниц
$total = intval(($posts - 1) / $num) + 1;
// Определяем начало сообщений для текущей страницы
$page = intval($page);
// Если значение $page меньше единицы или отрицательно
// переходим на первую страницу
// А если слишком большое, то переходим на последнюю
if(empty($page) or $page < 0) $page = 1;
if($page > $total) $page = $total;
// Вычисляем начиная к какого номера
// следует выводить сообщения
$start = $page * $num - $num;
if ($page != 1) $pervpage = \'<a href= ./page?page=1><<</a>
<a href= ./page?page=\'. ($page - 1) .\'><</a> \';
// Проверяем нужны ли стрелки вперед
if ($page != $total) $nextpage = \' <a href= ./page?page=\'. ($page + 1) .\'>></a>
<a href= ./page?page=\' .$total. \'>>></a>\';

// Находим две ближайшие станицы с обоих краев, если они есть
if($page - 2 > 0) $page2left = \' <a href= ./page?page=\'. ($page - 2) .\'>\'. ($page - 2) .\'</a> | \';
if($page - 1 > 0) $page1left = \'<a href= ./page?page=\'. ($page - 1) .\'>\'. ($page - 1) .\'</a> | \';
if($page + 2 <= $total) $page2right = \' | <a href= ./page?page=\'. ($page + 2) .\'>\'. ($page + 2) .\'</a>\';
if($page + 1 <= $total) $page1right = \' | <a href= ./page?page=\'. ($page + 1) .\'>\'. ($page + 1) .\'</a>\';
$count=mysqli_fetch_row(mysqli_query($mysqli, \"SELECT COUNT(*) FROM `news`\"*);
if ($count[\'0\'] == 0) {
echo \'<div class=\"error\">Новостей пока нет</div>\';
} else {
while ($res=mysqli_fetch_assoc(mysqli_query($mysqli, \"SELECT `id`,`title` FROM `news` ORDER BY `id` DESC LIMIT \".$start.\",\".$num))) {
echo \'<div class=\"menu\"><a href=\"list.php?id=\'.$res[\'id\'].\'\">\'.$res[\'title\'].\'</div>\';
}
}
page_menu();//вывод навигации
?>

2. (18 фев 2014, 01:08) [0/0] [0] [отв] [спам] [под] +1 | -1

Пробуй так

[code]

<?

$num =25;

// Извлекаем из URL текущуюстраницу

$page =$_GET[\'page\'];

// Определяем общее числосообщений вбазе данных

$result =mysqli_fetch_row(mysqli_query($mysqli, \"SELECT COUNT(*)FROM news\"*);

$mysqli = (\"SELEk` DESC LIMIT\".$start.\",\".$num);

$posts= $result[\'0\'];

// Находим общее числостраниц

$total=intval(($posts - 1)/ $num)+ 1;

// Определяем начало сообщений для текущейстраницы

$page =intval($page);

// Еслизначение $page меньше единицыили отрицательно

// переходим на первую страницу

// А еслислишком большое, топереходим на последнюю

if(empty($page)or$page < 0)$page = 1;

if($page > $total)$page = $total;

// Вычисляем начинаяк какогономера

// следуетвыводить сообщения

$start =$page * $num -$num;

if ($page != 1)$pervpage =\'<a href=./page?page=1><<</a>

<a href= ./page?page=\'.($page -1).\'><</a> \';

// Проверяемнужнылистрелки вперед

if ($page != $total)$nextpage =\' <a href=./page?page=\'. ($page + 1).\'>></a>

<a href= ./page?page=\' .$total.\'>>></a>\';

// Находим две ближайшие станицы с обоих краев, еслиониесть

if($page -2> 0) $page2left =\' <a href=./page?page=\'. ($page - 2).\'>\'. ($page -2) .\'</a> | \';

if($page -1> 0) $page1left =\'<a href= ./page?page=\'. ($page -1) .\'>\'.($page -1).\'</a> |\';

if($page +2 <=$total)$page2right =\' | <a href= ./page?page=\'. ($page +2) .\'>\'.($page +2).\'</a>\';

if($page +1 <=$total)$page1right =\' | <a href= ./page?page=\'. ($page +1) .\'>\'.($page +1).\'</a>\';

$count=mysqli_fetch_row(mysqli_query($mysqli, \"SELECTCOUNT(*)FROM `news`\"*);

if ($count[\'0\'] ==0) {

echo\'<div class=\"error\">Новостейпока нет</div>\';

}else {

while ($res=mysqli_fetch_array ($mysqli)){

echo\'<div class=\"menu\"><a href=\"list.php?id=\'.$res[\'id\'].\'\">\'.$res[\'title\'].\'</div>\';

}

}

page_menu();//выводнавигации

?>


[/code]
Добавлено 18.02.14 в 01:14:08:
А хотя....

Надо через выводить через for () цикл выводить)))


Изм. 1 раз. / Посл. изм. (18 фев 2014, 01:12)
3.
Hatsune Miku * [мошенник] 22.23
[автор] (18 фев 2014, 16:27) [1/0] [1] [отв] [спам] [под] +1 | -1

RADION, нашел праблу запрос выносить за цикл надо

4. (18 фев 2014, 16:33) [0/0] [0] [отв] [спам] [под] +1 | -1

susano, тоже верно=)

  • 1 из 1
Чтобы писать сообщения авторизируйтесь или пройдите регистрацию на сайте.
Подписаны: 1
Скачать тему | Файлы темы | Фильтр сообщений