Новая версия FILEMEMCACHE

Получение всех IP пользователя

function getIps()
	{
	$ips = isset($_SERVER['HTTP_X_FORWARDED_FOR']) ? $_SERVER['HTTP_X_FORWARDED_FOR'] : '';
	preg_match_all("#(\d+\.\d+\.\d+\.\d+)#", $ips, $m);
	$m[0][]=$_SERVER['REMOTE_ADDR'];
	$ips = sizeof($m) ? implode(',',$m[0]) : '';
	return $ips;
	}

Читать полностью...

Заметки, Статьи ,

Мы против XSS (JS)

Вот Вам две функции, которые я использую для борьбы с JS XSS т.е. инъекциями джава скриптов в поисковые поля форм.

Использование:

<?php
// Чистит $_GET переменные от мусора (можно заменить на пост, можно переписать функцию)
excludeJS_XSS();
// чистит определенну. переменную (работа по проще)
$var = searchValue($_POST['search_value']);
?>

Читать полностью...

Заметки, Статьи ,

Прорисовка HTML страницы в IE при загрузке

У меня стояла задача, сделать прорисовку в IE постепенной, как это делается в FF3. Т.е. в ФФ прорисовка страницы производилась кусочками загруженного кода, т.е. сначала появится шапка, потом меню, потом часть контента и так раз 10, потом футер и страница загружена. В IE этот процесс был весьма другой, появлялся белый экран, появлялись первые в коде отрисовки таблиц, потом страница висит в таком состоянии, и после полной загрузки — отображалась полностью.
Читать полностью...

Заметки, Размышления , ,

Оптимизация запросов

Сегодня рассмотрим метод анализа запросов SELECT для увеличения их скорости.
Что-то определенного для оптимизации конкретных таблиц я не дам, будет рассмотрен только метод анализа.

Недавно, работая над каталогом организаций и их товара, понял, что реляционные базы данных (т.е. связанные таблицы между собой) не всегда упрощают жизнь, если это связано с оптимизацией на скорость.
Читать полностью...

Заметки, Размышления, Статьи , ,

Время выполнения запросов, процедур

Все достаточно просто, как и в любых других измерителях времени выполнения. Первое — это ставим точку старта (запоминаем время), выполняем нужную операцию, ставим точку окончания — тоже время, делаем разность от большего к меньшему, и получаем время выполнения:

$st = array_sum(explode(' ',microtime()));
... ЗАПРОС, ПРОЦЕДУРА, ДОЛГАЯ ОБРАБОТКА ...
$et = array_sum(explode(' ',microtime()));
echo 'Время выполнения: '.($et - $st);

Читать полностью...

Заметки, Статьи ,

Отправка почты с вложениями (часть вторая)

03 Апр 2009

Продолжение статьи Отправка почты с вложениями

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

Всем известна PHP функция MAIL:

bool mail($to, $subject, $message, $headers, $additional_parameters)

Она отправляет текст $message как письмо с заголовком $subject получателю $to с какими-то дополнительными заголовками на вроде «From: ….»
Читать полностью...

Заметки, Сделай сам, Статьи , , ,

Новая тулза — генератор SQL INSERT запросов

Смотрите тут: http://gphp.ru/poleznye-tulzy

пункт №8

Заметки

Оптимизация таблиц MySQL и запросов к таблицам

Что-то определенное тут не будет сказано, а будут рассмотрен случай, подталкивающих к оптимизации.

Для начала зададимся исходными параметрами сайта:
1. сайт с посещаемостью более 10 000 человек в день
2. сайт представляет собой блог новостей с возможностью комментировать новости
3. При каждом просмотре новости увеличивается ее кол-во просмотров
4. Нужно выводить при выводе новостей: — Количество просмотров — Количество комментариев
Читать полностью...

Заметки, Сделай сам, Статьи , ,

Новый раздел — Полезные тулзы

26 марта 2009

В него буду добавлять всякие разные интересные скрипты, которые упрощают жизнь. Перейти в раздел

Статьи