ФорумПрограммированиеPHP для идиотов → Вопрос по построчной навигации

Вопрос по построчной навигации

  • adw0rd

    Сообщения: 22959 Репутация: N Группа: в ухо

    Spritz 17 июля 2009 г. 21:36, спустя 2 минуты 37 секунд

    Кто такой Ермак?
    Один знакомый, хороший чел…

    Почему меня после добавления сообщеня кидает на первую страницу?
    Ты про свой скрипт?

    Тоесть даже если зайти на index.php гостя открывается на первой странице((что делать.
    Ничего не понял, создавай новую тему и объясни подробнее
    https://smappi.org/ - платформа по созданию API на все случаи жизни
  • code9

    Сообщения: 135 Репутация: N Группа: Кто попало

    Spritz 17 июля 2009 г. 21:46, спустя 9 минут 28 секунд


    Кто такой Ермак?
    Один знакомый, хороший чел…

    Почему меня после добавления сообщеня кидает на первую страницу?
    Ты про свой скрипт?

    Тоесть даже если зайти на index.php гостя открывается на первой странице((что делать.
    Ничего не понял, создавай новую тему и объясни подробнее
    Да мой скрипт.
    Зачем новую тему(это из-за построчной навигации.Как тут сделать,чтобы при переходе открывалась последняя а не первая страница

    <?
    session_start();
    if (isset($_SESSION['user_login']))
    {

    $user=$_SESSION['user_login'];
    } else {
    $user="Гость";
    }

    //—————
    include("connect.php");
    include("functions.php");

    //вывод данных


    $p="___________________";

    echo '<center>';
    echo '<table border=0 width=50%>';
    echo '<tr>';
    echo '<td height=50 background="logo.png">';
    echo '</td>';
    echo '</tr>';
    echo '<tr>';
    echo '<td bgcolor="#FFCC33" height=20 >';



    echo "Вы: $user";


    echo '</td>';
    echo '</tr>';
    echo '</table>';


    echo '<table width=50% border=0>';
    echo '<tr>';
    echo '<td width=30 background="w.png">';
    echo '<td background="bg.png">';

    //______________постраничная навигация________________//

    $nums = 10;

    if (isset($_GET['page'])) {
    $page = intval($_GET['page']);
    }
    else {
    $page = 1;
    }

    $query = "SELECT COUNT(*) AS `counter`
    FROM `posts`";
    $sql = mysql_query($query) or die(mysql_error());
    $row = mysql_fetch_assoc($sql);

    $elements = $row['counter'];

    $pages = ceil($elements/$nums);


    if ($page < 1) {
    $page = 1;
    }
    elseif ($page > $pages) {
    $page = $pages;
    }


    $start = ($page-1)*$nums;

    // когда у нас в таблице нет записей
    if ($start < 0) $start = 0;

    $query = "SELECT *
    FROM `posts`
    LIMIT {$start}, {$nums}";
    $sql = mysql_query($query) or die(mysql_error());

    while ($row = mysql_fetch_assoc($sql)) {
    // здесь выводим наши записи из базы
    $str=$row["text"];
    $mod_str = wordwrap($str,20,"\t");

    echo '<b>'.$row["name"].' в '.''.$row["date"].' сказал:'.'</b>'.'<br/>'.'<i>'.bb_code($mod_str).'</i>'.'<br/>'.'<br/>';
    }


    // далее нам надо прицепить листалку

    $neighbours = 6;
    $left_neighbour = $page - $neighbours;
    if ($left_neighbour < 1) $left_neighbour = 1;

    $right_neighbour = $page + $neighbours;
    if ($right_neighbour > $pages) $right_neighbour = $pages;

    if ($page > 1) {
    print ' <a href="?page=1">первая</a> … <a href="?page=' . ($page-1) . '"><<<</a> ';
    }

    for ($i=$left_neighbour; $i<=$right_neighbour; $i++) {
    if ($i != $page) {
    print ' <a href="?page=' . $i . '">' . $i . '</a> ';
    }
    else {
    // выбранная страница
    print ' <b>' . $i . '</b> ';
    }
    }

    if ($page < $pages) {
    print ' <a href="?page=' . ($page+1) . '">>>></a> … <a href="?page=' . $pages . '">последняя</a> ';
    }

    //___конец постраничной навигаци________//


    //вывод 6 последних постов
    //$post=mysql_query("SELECT * FROM `posts` ORDER BY id DESC LIMIT 6");
    //while ($arr=mysql_fetch_array($post))
    //{

    // echo '<b>'.$arr["name"].' в '.''.$arr["date"].' сказал:'.'</b>'.'<br/>'.'<i>'.bb_code($arr["text"]).'</i>'.'<br/>'.'<br/>';
    //}




    echo "<form action=\"save.php\" method=\"post\">";

    if (!isset($_SESSION['user_login']))
    {
    echo "Имя:<br /><input type=\"text\" name=\"name\" size=\"32\" /><br />";
    } else {
    echo $user;
    echo '<br>';
    }
    echo "Сообщение:<br />
    <textarea name=\"text\" cols=\"60\" rows=\"6\"></textarea><br />
    Введите число:
    <p><img src=\"1/?<?php echo session_name()?>=<?php echo session_id()?>\"></p>
    <p><input type=\"text\" name=\"keystring\"></p>
    <input type=\"submit\" value=\"Сказать\"></form>";




    echo "</td>";
    echo "</td>";
    echo '<td width=30 background="w.png">';
    echo "</td>";
    echo "</tr>";
    echo "</table>";
    echo "Ваш ip:$ip браузер: $bra";
    echo '<br>';
    echo $copy;
    echo '</center>';
    ?>


  • adw0rd

    Сообщения: 22959 Репутация: N Группа: в ухо

    Spritz 17 июля 2009 г. 21:48, спустя 2 минуты 38 секунд

    Как тут сделать,чтобы при переходе открывалась последняя а не первая страница

    При переходе на новую страницу? По ссылке? Какого ввида ссылка?
    Тебе ссылку "Последняя страница" надо?
    https://smappi.org/ - платформа по созданию API на все случаи жизни
  • code9

    Сообщения: 135 Репутация: N Группа: Кто попало

    Spritz 17 июля 2009 г. 21:56, спустя 8 минут 8 секунд

    Ну вот гостя у меня открывается так book/index.php при таком переходе,открывается ПЕРВАЯ страница.Вот к примеру на этом фруме когда захожу в тему я ведь попадаю на последнюю страницу) а потом если нужно листаю на первую. Вот мне и нужно,чтобы когда я открываю гостю index.php мне эта построчная навигация выводила последнюю страницу.
    пс мне 18
  • adw0rd

    Сообщения: 22959 Репутация: N Группа: в ухо

    Spritz 17 июля 2009 г. 22:00, спустя 3 минуты 11 секунд

    То есть тебе нужна сортировка в обратном порядке?
    Тогда


    $query = "SELECT *
    FROM `posts`
    ORDER BY `id` DESC
    LIMIT {$start}, {$nums}";
    https://smappi.org/ - платформа по созданию API на все случаи жизни
  • code9

    Сообщения: 135 Репутация: N Группа: Кто попало

    Spritz 17 июля 2009 г. 22:07, спустя 6 минут 59 секунд

    Так вроде норм) теперь попадаю на последний пост(и он теперь сверху выводится).Только с навигацие теперь неразбириха)))неудобно,но для начала думаю пойдет.Спасибо!Сильно помог.
  • adw0rd

    Сообщения: 22959 Репутация: N Группа: в ухо

    Spritz 17 июля 2009 г. 22:10, спустя 3 минуты 42 секунды

    Будь здоров!
    https://smappi.org/ - платформа по созданию API на все случаи жизни

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