Показать сообщение отдельно
  #1 (permalink)  
Старый 21.09.2010, 02:54
Аватар для Golovastik
Профессор
Отправить личное сообщение для Golovastik Посмотреть профиль Найти все сообщения от Golovastik
 
Регистрация: 12.08.2010
Сообщений: 221

Прокомментировать пару непонятных мест
Расшифруйте пож. пару мест непонятных из этого кода, я написал в комментариях.
А именно вот эти строки:
Код:
1)$result = mysql_query("SELECT * from $table ORDER by id desc");
Этоо означает выбрать из таблицы все строки сортируя их в обратном порядке, это зачем делать?
2)
Код:
 $num_rows = mysql_num_rows($result); Зачем считать кол-во записей в таблице,я так понял это кол-во строк
3)
Код:
 $num_rows = round($num_rows/$chislo);
Зачем здесь функция раунд? И у меня 20 записей, почему на первой странице выводит 5 записей, а на 2 и 3 по 10?
4)
Код:
($_GET['str'])) //Откуда взялась переменная str в глобальном массиве?
5)
Код:
 $nav = intval($nav); //Вот это место зачем писать?
6)
Код:
 for ($i=1; $i<$num_rows; $i++) { //А чему переменная num_rows равна,где она получает значения?
    if ($i != $nav) { //А это что за проверка странная?
    echo '<a href="'.$PHP_SELF.'?str='.$i.'">'.$i.'</a> ';//Вот этот кусок желательно растолкуйте понятней ?str и пхп_селф
    }
    else {
    // АКТИВНУЮ СТРАНИЦУ ДЕЛАЕМ НЕ ГИПЕРССЫЛКОЙ
    echo '<span>'.$i.'</span> ';  //Что это за вывод переменной $i и чему эта переменная будет равна?
    }
    }
7)
Код:
if (!isset($_GET['str'])) { //Что это за проверка и откуда взялась переменная стр в глобальном массиве,что она делает?
8)Последнее,непонятное вот это растолкуйте пож. подробней
Код:
 '.substr($row['text'],0,100).'.. <a href="text.php?nomer='.$row['id'].'">>></a></p>';

Код:
<?

    $server = 'localhost'; // ИМЯ СЕРВЕРА
    $user = 'ptisa'; // ПОЛЬЗОВАТЕЛЬ 
    $pass = '12345'; // ПАРОЛЬ ПОЛЬЗОВАТЕЛЯ

    $db = 'video'; // БАЗА ДАННЫХ
    $table = 'lessons'; // НАЗВАНИЕ ТАБЛИЦЫ

    $chislo = 5; // ЧИСЛО СООБЩЕНИЙ НА СТРАНИЦЕ

    // ДЛЯ УДОБСТВА ОБОЗНАЧИМ ПЕРЕМЕННУЮ С ТЕКСТОМ ОШИБКИ
    $text_error = '<br />Ошибочка вышла!';

    // СОЕДЕНИМСЯ С MySQL
    $connect = mysql_connect ($server, $user, $pass);
    if (!$connect) {
    echo $text_error;
    exit;
    }

    // СОЕДЕНИЯЕМСЯ С БАЗОЙ ДАННЫХ
    $select = mysql_select_db($db);
    if (!$select) {
    echo $text_error;
    exit;
    }


    // СОЗДАЁМ ЗАПРОС
    $result = mysql_query("SELECT * from $table ORDER by id desc");
    // СЧИТАЕМ КОЛЛИЧЕСТВО ЗАПИСЕЙ В ТАБЛИЦЕ - У МЕНЯ ИХ 20
    $num_rows = mysql_num_rows($result); // Это подсчёт из скольки строк состоит табл. зачем это делать?

  // А ТЕПЕРЬ СЧИТАЕМ НА СКОЛЬКО СТРАНИЦ НАМ РАЗБИТЬ ЗАПИСИ И ВЫДЕЛЯЕМ ЦЕЛОЕ ЧИСЛО
    $num_rows = round($num_rows/$chislo); //Зачем здесь функция round?


    // ЗДЕСЬ МЫ ПРОВЕРЯЕМ НА КАКОЙ СТРАНИЦЕ СЕЙЧАС ПОЛЬЗОВАТЕЛЬ
    if (isset($_GET['str'])) {
    $nav = $_GET['str'];
    }
    else {
    $nav = 0;
    }
    $nav = intval($nav); // Смысл этой строки, зачем? Что делает интвал с переменной nav?
    echo 'Навигация: ';

    // А ТЕПЕРЬ ВЫВОДИМ НОМЕРА СТРАНЦ
    for ($i=1; $i<$num_rows; $i++) { //Если у меня 20 записей в базе значит здесь будет от 1 до 4?
    if ($i != $nav) {  ..Что это за проверка и зачем?
    echo '<a href="'.$PHP_SELF.'?str='.$i.'">'.$i.'</a> '; //прокомментируйте вот это место подробнее
    }
    else {
    // АКТИВНУЮ СТРАНИЦУ ДЕЛАЕМ НЕ ГИПЕРССЫЛКОЙ 
    echo '<span>'.$i.'</span> '; //Что это за вывод?
    }
    }

    echo '<hr />'; // ОТДЕЛИМ НАВИГАЦЮ ОТ КОНТЕНТА ДЛЯ НАГЛЯДНОСТИ

    // НАЧИНАЕМ ВЫВОДИТЬ САМУ ИНФОРМАЦИЮ ПОСТРАНИЧНО :)
    if (!isset($_GET['str'])) {
    $str = 0;
    }
    else {
    $str = $_GET['str']*$chislo - $chislo;
    }
    $nomer = $str + 5;
    // ФОРМИРУЕМ ЗАПРОС НУЖНОЙ НАМ ЧАСТИ ИНФОРМАЦИИ
    $result = mysql_query("SELECT * from $table ORDER by id asc limit $str, $nomer");
    // ИНАЧЕ ВЫВОДИМ ОШИБКУ
    if (!$result) {
    echo $text_error;
    exit;
    }

    echo '<div style="width: 40%;">';
    while ($row = mysql_fetch_array($result)) {
    echo '<p>'.$row['id'].' - <strong>'.$row['page'].'</strong>
    <br />
    '.substr($row['text'],0,100).'.. <a href="text.php?nomer='.$row['id'].'">>></a></p>';
    }
    echo '</div>';

    mysql_close($connect);

?>
Ответить с цитированием