[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Оптимизация скрипта
philimon
запрос:
$sql = "SELECT property.source, property.time, property.date, property.size FROM property, users WHERE property.id_photo = users.id AND divide = '$divide' AND login = '$login' ";

далее в $i помещаем общее количество строк, возвращенных запросом.
создаем массив $source, в котором $i - индекс, а содержимое ячейки - адрес фотографии.
$num - переменная, в которой хранится номер последней фотки, которая должна быть на следующей странице.
проверяем:

if ($num != "") { // если пользователь перешел на другую страницу
$i = $num;
}

вывод картинок на экран:
$count = 1;
while(($i > 0)&&($count <= 9)) {
$output .= "<center><br><a href = '$source[$i]'><img src = '/small/$source[$i]'></a>\n";
$count ++;
$i = $i - 1;
}

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



Спустя 2 часа, 36 минут, 29 секунд (12.10.2007 - 23:33) emp написал(а):
Вначале создать переменную, в котором будет номер страницы, он же номер фото:
Код
$_SESSION['number'] = 1;

А потом:
Код
$sql = "SELECT property.source, property.time, property.date, property.size FROM property, users WHERE property.id_photo = users.id AND divide = '$divide' AND login = '$login' AND id='$_SESSION[number]'";
...
$_SESSION['number']++;

Спустя 14 часов, 24 минуты, 8 секунд (13.10.2007 - 13:57) philimon написал(а):
Если не заметил, то у меня на странице 9 фоток, а не одна.
Такой запрос, который предложен, не годится, потому что id фоток в БД идут хоть и по порядку, но все же некоторых нет, потому как фотки были удалены.

Спустя 6 часов, 54 минуты, 14 секунд (13.10.2007 - 20:52) emp написал(а):
Сохранять id последнего извлеченного фото и
Код
WHERE id>'$_SESSION[id]' LIMIT 9

Спустя 18 часов, 57 минут, 51 секунда (14.10.2007 - 15:49) philimon написал(а):
Преобразовал запрос до вида:

"SELECT property.source, property.time, property.date, property.size FROM property, users WHERE property.id_photo = users.id AND divide = '$divide' AND login = '$login' ORDER BY property.date desc, property.time desc LIMIT $start,9"

и еще внес некоторые изменения в скрипт, теперь работает нормально.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.