Подпишись на наши RSS Уроки по Фотошоп , просто щелкнув по иконке.


Новинка! Узнайте о Самом Результативном Способе Изучения Фотошопа, Без Посещения Дорогих Курсов, Без Черно-Белых Самоучителей и Без Метода Тыка!

10 Часов Практических Уроков Записанных с Экрана Монитора с Подробными Аудио-Комментариями сделают из Вас настоящего Учителя Фотошоп!

Подробнее..


Создаём новогоднюю поздравительную открытку
Создаём сложное выделение волос
Превращаем современную фотографию в старую
Создаём разноцветную светящуюся спираль
Наносим естественную татуировку в Фотошопе


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

Пожалуй одна из самых распростанённых задач для веб-программистов. Большинство новичков сталкиваются с ней, я не был исключением. Попытаемся же разобраться с логикой скрипта и реализовать его. Приступим?

Первое, что нам нужно для этого иметь – это базу данных с несколькими десятками строк, например статей или комментариев к ним (что угодно). Мы будем рассматривать базу данных MySQL, она является самой популярной на данный момент. Естественно используемый язык – это PHP.

Есть? Отлично! Продолжаем…

1. Создаём для примера файл primer.php;
2. Создаём Базу данных primer (можете не создавать, если у вас уже есть подходящая);
3. Создаём таблицу primer вот такой структуры (опять же, если нет другой);

CREATE table primer (
id int auto_increment primary key key,
name varchar(100) NOT NULL,
text longtext NOT NULL
);

4. Набиваем её информацией. Я сделаю 20 записей, мне не день ;)
5. Набираемся терпения – сейчас будем кодить.

Сам код довольно небольшой и несложный, поэтому вылажу его сразу весь, пометки Вам помогут разобраться без проблем.

Запихиваем нижележаций код в primer.php и пытаемся понять как же он работает:

<?

$server = 'localhost'; // ИМЯ СЕРВЕРА
$user = 'root'; // ПОЛЬЗОВАТЕЛЬ - НЕ ИСПОЛЬЗУЙТЕ ROOT ДЛЯ ВАШЕЙ ЖЕ БЕЗОПАСНОСТИ
$pass = ''; // ПАРОЛЬ ПОЛЬЗОВАТЕЛЯ

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

$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); // 20 ДЕЛИМ НА 5. СКОЛЬКО? :)

// ЗДЕСЬ МЫ ПРОВЕРЯЕМ НА КАКОЙ СТРАНИЦЕ СЕЙЧАС ПОЛЬЗОВАТЕЛЬ
if (isset($_GET['str'])) {
$nav = $_GET['str'];
}
else {
$nav = 0;
}
$nav = intval($nav); // ДЛЯ ЗАЩИТЫ ОТ НЕХОРОШИХ ДЯДЕНЕК МЫ ВЫДЕЛИМ ЦЕЛУЮ ЧАСТЬ $GET['str']
echo 'Навигация: ';

// А ТЕПЕРЬ ВЫВОДИМ НОМЕРА СТРАНЦ
for ($i=1; $i<$num_rows; $i++) {
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['name'].'</strong>
<br />
'.substr($row['text'],0,100).'.. <a href="text.php?nomer='.$row['id'].'">>></a></p>';
}
echo '</div>';

mysql_close($connect);
?>



Поясню лишь, что в переменной "str" передаётся номер страницы, на которой находится пользователь, в адрессной строке браузера это выглядит так:


Вот и всё, скрипт постраничного вывода у нас готов! Примерно, это должно выглядеть так:


Если это необходимо, редактируем скрипт (например, сделаем его функцией и будем использовать каждый необходимый нам раз) и влепляем его в Ваш дизайн на странице...



Если хотите не упустить данный урок, добавьте его в закладки:  

Хотите освоить весь Фотошоп с нуля?

Рекомендую Вам курс "Учитель Фотошопа в видеоформате", который состоит из 2-х частей: теоретической и практической. Все уроки даны в видеоформате с подробным озвучиванием всех выполняемых действий. Именно такой подход в изучении, позволит Вам в максимально короткие сроки овладеть всеми аспектами работы в Фотошоп.

Узнать подробнее

Рейтинг:     Добавлено: 2008-11-28    Просмотров: 2057    Сайт-источник: photoshop-php.ru

Оцените урок: 1   2   3   4   5   6   7   8   9   10    



Комментарии (4)


Комментарий by пгрл, От 2008-12-26

пгл

Комментарий by Владимир, От 2009-02-27

А как его функцией сделать?

Комментарий by Саша, От 2010-09-25

А если в таблице 3000 записей . сколико будет ссылок ?

Комментарий by Саша, От 2010-09-25

пол страницы ссылок ?

Оставить комментарий:

Ваше имя:

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

Введите число показаное на картинке (проверка от автороботов):

  


 

Рассылка - "Лучшие видеоуроки Фотошоп даром". Подписавшись на неё, Вы 2 раза в месяц будете получать на свой почтовый ящик, ссылки на лучшие уроки по работе в программе Adobe Photoshop совершенно бесплатно!

Лучшие уроки по Фотошопу 2 раза в месяц!

Ваше имя на русском: *
Ваш Email адрес: *

Подпишитесь сейчас и получите доступ к разделу "Лучшие уроки Фотошопа".


Если Вы давно мечтаете о создании собственного сайта на движке Drupal, то советую Вам обратить внимание на мой новый видеокурс "Drupal - Как создать профессиональный сайт с нуля". Это более 100 видеоуроков из которых Вы узнаете, как создать 4 сайта различной напрвленности, сложности и функционнальности.

Узнать подробнее


При первом запуске Photoshop палитра Actions содержит только набор операций по умолчанию для организации рабочей среды. Щелкнув по стрелке в правом верхнем углу палитры, вы выведете меню с перечнем других готовых операций: Frames (Рамки), Image Effects (Эффекты для изображений) и др. Попробуйте загрузить их и проверить их работу.

Узнать больше


Внимание!
X
Хотите Получать 2 Видеоурока по Работе В Программе Фотошоп ЕЖЕМЕСЯЧНО?
Ваш e-mail: *
Ваше имя: *