26

Re: Постраничная навигация

пример создания
http://www.softtime.ru/article/index.php?id_article=33

27

Re: Постраничная навигация

похоже причина в


WHERE id='$id'

показывает


You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'FROM main WHERE id='' ORDER BY id LIMIT -3, 3' at line 1

28

Re: Постраничная навигация

ramil31
Ошибка здесь: LIMIT -3, 3
Значение в LIMIT не может быть меньше 0 (нуля).

В переменной $page у вас 0 (ноль), чего быть не должно.
Смотрите как формируется данная переменная начиная со строки:
[mono]@$page = $_GET['page'];[/mono]

Попробуйте переписать эту строку так:
[mono]$page = (isset($_GET['page']) && $_GET['page'] > 0) ? $_GET['page'] : 1;[/mono]

29

Re: Постраничная навигация

Совсем запутался:rolleyes:

30

Re: Постраничная навигация

ramil31
Смотрите формирование переменной $page.

31 (изменено: molotow, 2010-08-30 21:43:55)

Re: Постраничная навигация

Доброго дня.

Помогите пожалуйста организовать вывод информации из базы данних(текст новостей) по страницам .Нужно, чтобы текст корректно разбивался на части (по абзатсам) и размещался в основной таблице.

Пожалуйста, переведите ваш вопрос на русский язык. Спасибо.
Модератор Hanut.

Код на даний момент:

<?php include ("block/db.php");
If (isset($_GET['id'])) { $id = $_GET['id'];} else echo "Нет переменной ID";
$result = mysql_query ("SELECT * FROM tnews WHERE id = '$id'",$db) or die ("Error query !!".mysql_error());
$myrow = mysql_fetch_array ($result); ?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<title><? echo $myrow['title']; ?></title>
<link href="style.css" rel="stylesheet" type="text/css">
<script type="text/JavaScript">
<!--


function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_showHideLayers() { //v6.0
  var i,p,v,obj,args=MM_showHideLayers.arguments;
  for (i=0; i<(args.length-2); i+=3) if ((obj=MM_findObj(args[i]))!=null) { v=args[i+2];
    if (obj.style) { obj=obj.style; v=(v=='show')?'visible':(v=='hide')?'hidden':v; }
    obj.visibility=v; }
}
//-->
</script>
</head>
<body vlink="#000000" alink="#000000">

<? include("block/menu_main.php"); ?>
      
                     <td width="613" valign="top">
                                     <p class="lessons_name" align="center"><? echo $myrow['title']; ?> </p>
                                    <p><? echo $myrow['text']; ?></p>
                                    <p>
                                           <div class="author" align="left"><? echo $myrow['author'] ?></div>
                                          <div class="date" align="right"><? echo $myrow['date']; ?></div>
                                    </p>
                     </td>
<? include("block/footer.php"); ?>
<? include("block/second_menu.php");  ?>

</body>
</html>

32

Re: Постраничная навигация

Hanut сказал:

Никогда так не присоединяйте! Ибо будут ошибки! Присоединять надо так:

$result1 = mysql_query('SELECT * FROM `fil` ORDER BY `id` DESC LIMIT ".$iOffsetLimit.",".$items_per_page.", $db);

Так ошибок не возникнет!

33

Re: Постраничная навигация

Наверное имелось в виду так:
$result1 = mysql_query('SELECT * FROM `fil` ORDER BY `id` DESC LIMIT ' . $iOffsetLimit . ',' . $items_per_page, $db);

34

Re: Постраничная навигация

Hanut сказал:

Наверное имелось в виду так:
$result1 = mysql_query('SELECT * FROM `fil` ORDER BY `id` DESC LIMIT ' . $iOffsetLimit . ',' . $items_per_page, $db);
так вылезет ошибка, стоит добавить строку проверки, существоует ли вообще записи, так сразу начинаются ошибки. я написал правильный код

35

Re: Постраничная навигация

monster_dj сказал:

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

Проверку добавить стоит, только я не вижу где она у вас.

36

Re: Постраничная навигация

Hanut сказал:
monster_dj сказал:

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

Проверку добавить стоит, только я не вижу где она у вас.


<?php
$items_per_page = 5; // Количество элементов на странице

$result_count2 = mysql_query('SELECT COUNT(*) AS `count` FROM `stories`', $db);
$aCount = mysql_fetch_array($result_count2);

$iPages = ceil($aCount['count'] / $items_per_page);
$page = (isset($_GET['page']) && $_GET['page'] <= $aCount['count']) ? $_GET['page'] : 1;
$iOffsetLimit = ($page - 1) * $items_per_page;
$iStart = ($page > 5) ? $page - 4 : 1;
if ($iPages > 1) {
    echo '<center><p class="pvote">Страницы: ';
    for ($i = $iStart; $i <= $iPages; $i++) {
        if ($page > 4 && $i == $page - 4) {
            echo '<a href="?page=' . $i . '">...</a>' . "\n";
            continue;
        }
        if ($i > $page + 3) {
            echo '<a href="?page=' . $i . '">...</a>' . "\n";
            break;
        }
        if ($i == $page) {
            echo ' <span style="font-weight: bold;"> ' . $i . ' </span> ' . "," . "\n";
        } else {
            echo '<a href="?page=' . $i . '">' . $i . '</a>' . "," . "\n";
        }
       }
    echo '</p></center>' . "\n";
}

$result = mysql_query ("SELECT id,title,description,text,author,date,time,view,rating,q_vote,url FROM stories ORDER BY id DESC LIMIT ".$iOffsetLimit.",".$items_per_page."",$db);
if (mysql_num_rows($result) == 0)
{
echo "<p class='post_comment'>Никто ещё не добавил рассказ :(</p>";
}
if (mysql_num_rows($result) > 0)
{
$myrow = mysql_fetch_array ($result);
$user_name = $_SESSION['user'];
if ($user_name == $myrow24["nick"])

do {

$r = $myrow["rating"]/$myrow["q_vote"];
$r = intval($r);

printf ("<table align='center' class='lesson'>
            <tr>
              <td><p class='lesson_name'><a href='view_story.php?id=%s'>%s</a></p>
              <p class='lesson_adds'>Добавлено: [<font color='red'>%s</font>] в: [<font color='red'>%s</font>]</p>
              <p class='lesson_adds'>Добавил: [<font color='red'>%s</font>]</p></td>
            </tr>
            <tr>
              <td><p>%s</p><p class='pvote'>Просмотров: [<font color='red'>%s</font>] &nbsp;&nbsp;&nbsp; Рейтинг: <img src='img/%s.png'> &nbsp;&nbsp;&nbsp; [<a href='edit_story.php?id=%s'>Редактировать!</a>] &nbsp;&nbsp;&nbsp; [<a href='drop_story.php?id=%s'>Удалить!</a>]</p></td>
            </tr>
          </table><br>", htmlspecialchars($myrow["id"]),htmlspecialchars($myrow["title"]),htmlspecialchars($myrow["date"]),htmlspecialchars($myrow["time"]),htmlspecialchars($myrow["author"]),nl2br($myrow["description"]),htmlspecialchars($myrow["view"]),$r,htmlspecialchars($myrow["id"]),htmlspecialchars($myrow["id"]));
}

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