[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Кэширование данных
Sanches
Всем здравствуйте! У меня вопрос насчет кэширования данных. Как сделать так, чтобы статичная информация выводилась на сайте не из базы данных, а из кэша на сервере?



Спустя 8 минут, 15 секунд (10.06.2010 - 13:37) vasa_c написал(а):
Пример статичной информации

Спустя 4 минуты, 56 секунд (10.06.2010 - 13:42) Sanches написал(а):
Допустим Страница "О нас" Когда пользователь к ней обращается, то каждый раз происходит запрос и выборка из базы данных. Но как правило на этой странице информация изменяется очень редко (иногда вообще не меняется). Так вот что бы частично снять нагрузку с сервера, можно занести ее в виде скомпелированной HTML страницы в какую-нибудь папку на сервере.

Спустя 3 минуты, 33 секунды (10.06.2010 - 13:45) Sanches написал(а):
Если вы знакомы с Wordpress то возможно вы знаете плагин hyper cash.

Он заносит все страницы сайта в виде HTML страниц в отдельную папку.
Если на какой-то из страниц что-то изменилось, он перезаписывает ее.

Спустя 8 минут, 53 секунды (10.06.2010 - 13:54) Nikitian написал(а):
Ну так компилируйте и сохраняйте, а при запросе смотрите, нет ли такого файла. В чём проблема?

Спустя 3 минуты, 55 секунд (10.06.2010 - 13:58) Sanches написал(а):
Цитата (Nikitian @ 10.06.2010 - 10:54)
Ну так компилируйте и сохраняйте, а при запросе смотрите, нет ли такого файла. В чём проблема?

А как это реализовать на PHP??

Спустя 3 минуты, 43 секунды (10.06.2010 - 14:02) vasa_c написал(а):
Чтобы предложить как реализовать это на PHP, нужно знать, как там у вас уже всё реализовано.
Мне, например, не понятно, зачем вообще на странице "О нас" нужно лезть в базу данных.

У веб-серверов же есть возможности кэшировать страницы целиком. Какой у вас сервер?

Спустя 9 минут, 14 секунд (10.06.2010 - 14:11) Sanches написал(а):

<?
$sql = "SELECT `text`,`copyright` FROM `table1` WHERE page=$id";
$query = mysql_query($sql);
$result = mysql_fetch_assoc($query);

echo htmlspecialchars($result["text"]);

?>




Что-то типа этого.

Спустя 4 минуты, 13 секунд (10.06.2010 - 14:15) Basili4 написал(а):
Цитата (Sanches @ 10.06.2010 - 15:11)
$sql = "SELECT `text` FROM `table1` WHERE page=$id";
$query = mysql_query("$sql");
$result = mysql_fetch_assoc($query);


Вот за это в 17 году растреливали


$id - не обработана а если туда не только циферка попадет????????

"$sql" - зачем почему на написать $sql
mysql_fetch_assoc($query);
Зачем нежен ассоцированый массив если у Вас только 1 поле mysql_fetch_field работает по быстрее







Спустя 7 минут, 30 секунд (10.06.2010 - 14:23) Sanches написал(а):
Цитата (Basili4 @ 10.06.2010 - 11:15)
Цитата (Sanches @ 10.06.2010 - 15:11)
$sql = "SELECT `text` FROM `table1` WHERE page=$id";
$query = mysql_query("$sql");
$result = mysql_fetch_assoc($query);


Вот за это в 17 году растреливали


$id - не обработана а если туда не только циферка попадет????????

"$sql" - зачем почему на написать $sql
mysql_fetch_assoc($query);
Зачем нежен ассоцированый массив если у Вас только 1 поле mysql_fetch_field работает по быстрее

Это я для примера только что написал. Проверка id у меня в самом начале документа (после заголовков).

Ну с кавычками описался малек!

А то что поле одно... представьте что их 2 или 3.
Быстрый ответ:

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