Есть вопрос?
Зайди на форум

Поиск на сайте: Advanced

Denix - новый дистрибутив Linux. Русификация Ubuntu и установка кодеков

dkws.org.ua
Форум сайта dkws.org.ua
 
Главная    ТемыТемы    АльбомАльбом    РегистрацияРегистрация 
 ПрофильПрофиль   Войти и проверить личные сообщенияВойти и проверить личные сообщения   ВходВход 

Хорошая книга =)

 
Начать новую тему Ответить на тему    Список форумов dkws.org.ua -> О книгах
 
Автор Сообщение
Doomer




Зарегистрирован: 24.10.2009
Сообщения: 1

СообщениеДобавлено: Сб Окт 24, 2009 6:26 pm    Заголовок сообщения: Хорошая книга =)
Ответить с цитатой

PHP5/6 и MySql 6 разработка web-приложения
Купил позавчера, вот уже половину прочел.Благодарность автору. Очень грамотно написано. Подчеркнул уже некоторые тонкости для себя, которые сам не знал =)
Хочу пожелать творческих успехов автору, чтобы дальше нас радовал хорошей рукописью)) Question
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Амир

Участник тусовки


Зарегистрирован: 21.07.2009
Сообщения: 135

СообщениеДобавлено: Вс Окт 25, 2009 2:11 pm    Заголовок сообщения:
Ответить с цитатой

Собственно, именно в этой книге была система автообъявлений, вот мое решение для пагинации, может кому пригодится, а кто то усовершенствует Embarassed
Цитата:


<?php

require "config.php";

//к серверу БД
mysql_connect($dbhost,$dbuser,$dbpasswd);
mysql_select_db($dbname) or die ('errrr');



// Переменная хранит число сообщений выводимых на станице
$num = 10;
// Извлекаем из URL текущую страницу
$page = $_GET['page'];
// Определяем общее число сообщений в базе данных
$result = mysql_query("SELECT COUNT(*) FROM info WHERE 1");
$rgPosts = mysql_fetch_row($result);
$posts=$rgPosts[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;
// Выбираем $num сообщений начиная с номера $start
$result = mysql_query("SELECT * FROM info ORDER BY id DESC LIMIT $start, $num");

// $result = mysql_query("SELECT * FROM info LIMIT $start, $num"); если нужен вывод с первой по дате, то эта строка

// В цикле переносим результаты запроса в массив $postrow
while ( $postrow[] = mysql_fetch_array($result))


for($i = 0; $i < $num; $i++);


function show_cars($q)
{
$r = mysql_query($q);



$html = "<table border=0 width=100%>";
while ($row=mysql_fetch_array($r)) {
$html .= "<tr>";

$image = "<img src=no_photo.gif>";
if ($row[photo]!=="") {
$photo = "sales/thum_" . basename($row[photo]);
$image="<img width=100 height=67 src=$photo>";
};
$html .= "<td width=10%>$image<td>";
$html .= "<td>$postrow[$i]$row[marka] $postrow[$i]$row[model] '$postrow[$i]$row[year]
<br><strong>$postrow[$i]$row[ID]</strong>
<br>$postrow[$i]$row[color]
<br>$postrow[$i]$row[run] км
<br><b>$postrow[$i]$row[price]</b>
<br>$postrow[$i]$row[phone1]
<br><a href=show_car.php?id=$row[ID]>Подробнее</a>";

$html .= "</tr>";
}
$html .= "</table>";
return $html;
}



$q = "SELECT * FROM info ORDER BY id DESC LIMIT $start, $num";

$RESULTS = show_cars($q);



echo $RESULTS;





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

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

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

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

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

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



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

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

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

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

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

// Вывод меню
echo $pervpage.$page2left.$page1left.'<b>'.$page.'</b>'.$page1right.$page2right.$nextpage;
?>


упс, чуть не забыл, код сильно изменен, но вполне узнаваем, просто не нравится мне шаблонизатор
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
den

Старожил


Зарегистрирован: 31.01.2006
Сообщения: 13870
Откуда: Кировоград, Украина

СообщениеДобавлено: Вс Окт 25, 2009 7:13 pm    Заголовок сообщения:
Ответить с цитатой

Doomer, Амир, спасибо!
Вернуться к началу
Посмотреть профиль Отправить личное сообщение dhsilabs@jabber.ru
Показать сообщения:   
Начать новую тему Ответить на тему    Список форумов dkws.org.ua -> О книгах Часовой пояс: GMT
Страница 1 из 1
 Главная страница сайта
 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
© Колисниченко Денис