PHP и ЧПУ, что это и с чем его «едят»?

PHP и ЧПУ, что это и как с ними работать?

На днях нужно было быстренько состряпать простое подобие ЧПУ, для 4-6 страниц. Смысл заключался в том, что есть header (картинка с меню) и футер (картинка), а в центре должен был меняться текст. Т.к. страниц было всего от 4 до 6 то речи о CMS в принципе быть и не могло (не тот масштаб). Было решено сделать до боле глупое решение. (на нем хорошо просматривается принцип работы ЧПУ). Есть файл .htaccess со следующим содержимым:
RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ /index.php?$1 [L] (далее…)
Categories: PHP Tags: , , , ,

MySQL max_allowed_packet меняем максимальный размер пакета

13 февраля 2012 6 комментариев
Если при добавлении записей в базу данных MySQL возникает проблема связанная с max_allowed_packet, то скорее всего тот блок данных превышает максимальный допустимый размер. Есть два способа изменить это значение:

1. Меняем max_allowed_packet в my.cnf

обычно в /etv/my.cnf добавляем строчку
max_allowed_packet = 16M

 

2. Запуск MySQL с ключом --max_allowed_packet

Это до первой перезагрузки
mysqld --max_allowed_packet=16M
Categories: Linux, PHP, SQL, Windows Tags: ,

Волшебные кавычки (Magic Quotes) и как с ними бороться.

26 января 2012 Нет комментариев
Функционал Волшебных кавычек (Magic Quotes) - перехватывать данные, которые получает скрипт (массивы $_POST, $_GET и т.д.) и экранировать в них специальные символы. Разработаны для защиты от хакерских атак вроде SQL Injection, но на практике от них больше проблем, чем пользы. Посмотреть текущие настройки можно с помощью phpinfo(). (если Magic Quotes включена, в разделе Configure Command будет строка --enable-magic-quotes).

Отключение Волшебных кавычек (Magic Quotes)

в .htaccess:
php_flag magic_quotes_gpc Off
в php.ini:
magic_quotes_gpc Off
Отключает Magic quotes для входящих данных из массивов GET/POST/Cookie. (далее…)

Как определить имя и директорию файла скрипта PHP который сейчас выполняется

24 января 2012 Нет комментариев
Для выстраивания правильных путей для подключения файлов в скриптах, которые тоже подключаются в PHP можно использовать волшебные константы:

__FILE__

Полный путь и имя текущего файла. Если используется внутри подключаемого файла, то возвращается имя данного файла. Начиная с версии PHP 4.0.2, __FILE__ всегда содержит абсолютный путь с разрешенными символическими ссылками, тогда как в старых версиях в некоторых обстоятельствах возвращался относительный путь.

__DIR__

Директория файла. Если используется внутри подключаемого файла, то возвращается директория этого файла. Это эквивалентно вызову dirname(__FILE__). Возвращаемое имя директории не оканчивается на слэш, за исключением корневой директории (добавлена в PHP 5.3.0.)
Categories: PHP Tags: ,

Установка собственного шрифта на сайт

27 декабря 2011 Нет комментариев
Установка собственного шрифта на сайт. Иногда это приходится делать, и использовать для этого не стандартные шрифты. Чтобы их увидели не только вы но и посетитель сайта, этот шрифт как то надо закачать на компьютер посетителя, первый способ такой:
<style type="text/css"> p {font-family: URL шрифта (к примеру, www.ваш домен.ru/font.ttf) ;} </style>
второй вариант и более правильный вот такой:
<style> @font-face { font-family: mriam; src: url(http://ваш домен/font.ttf); } </style> <p style="font-family: название шрифта; font-size: 10px">текст</p>
Categories: HTML CSS JS, PHP Tags: ,

Усовершенствованный var_dump на php (dumphper)

27 декабря 2011 Нет комментариев
Усовершенствованный var_dump на php (dumphper) На просторах интернета отыскал очень удобный дампер, лучше чем стандартный var_dump. Собственно чем же он лучше, ну во-первых вся информация выводиться намного читабельнее, нет ограничения ко кол-ву символов, да и вообще все на много проще и удобнее. (далее…)
Categories: PHP Tags: , ,

CSV парсер на PHP

27 декабря 2011 Нет комментариев
csv парсер на php, очень простой и в некоторых случаях очень нужный скрипт. Написан был не мной, автору респект, надеюсь не обидится т.к. не помню исходной ссылки на сайт. Пользуйтесь. (далее…)
Categories: PHP Tags: , ,

Как корректно отправить письмо в php в кодировке UTF-8

20 декабря 2011 1 комментарий
Что делать, если стандартная функция php mail() отправляет письма в неверной кодировке. На самом деле она отправляет что дают и совершенно ничего не проверяет. Что же делать? Немного теории:
Тело письма может быть текстом в любой кодировке. Немного сложнее дело обстоит с составляющими заголовка письма (Subject, From, To), они по стандарту должны быть в US-ASCII. Использование в заголовках кодированного текста регламентируется стандартом RFC-2047. Стандарт задает две возможные формы кодирования - BASE64 и Quoted-Printable. BASE64 более универсальна и работает в том числе для кодировки UTF-8, поэтому мы будем использовать именно эту форму. MIME-совместимый почтовый клиент обязан уметь читать обе формы.
 И практика: Ниже приведен пример простой функции, которая отправляет в требуемой кодировке MIME-совместимые письма на русском языке в виде простого текста или в формате HTML (далее…)
Categories: PHP Tags: , , , ,

Как сделать редирект (перенаправление) в PHP, HTML, javascript и .htaccess

14 декабря 2011 1 комментарий
Ниже описаны способы сделать редирект (перенаправление) для каждого варианта.

Редирект PHP

Не забывать: До заголовка не должно выводиться никаких!!! символов. Частая проблема - пробел перед <?php в начале файла Следующий код работать не будет и даст варнинг:

Редирект HTML

  • content - значение указывает количество секунд до переадресации на адрес, указанный в поле url
  • url - адрес для редиректа. Туда и перенаправляем.

Редирект JavaScript

без комментариев... )) В продолжении - Редирект в .htaccess (далее…)

Простой способ выгрузки таблицы в excel из PHP

13 декабря 2011 12 комментариев
Если надо просто выгрузить некую таблицу с сайта как файл excel, то подойдет достаточно простой способ. Основная идея - excel уже давно умеет сохранять свои документы как html. Ну и самое простое решение - сохраняем любой документ именно так, открываем в текстовом редакторе, смотрим что и как там написано, пытаемся воспроизвести. Рассмотрим самый банальный пример: (запрос к базе данных не рассматривается... только та часть, которая выгрузит файл, понятный excel'ю. 1. Формируем заголовок: 2. Теперь можно выводить ранее полученные данные, из MySQL, из файла, еще откуда - не важно. все на ваше усмотрения. Главное НЕ забыть сформировать стандартную HTML шапку под правильную кодировку (например utf-8) что бы в excel корректно отображалась кириллица. И не забываем про то, что кодировка файла скрипта также должна быть такой же. 3. И вот формирование самой таблицы, которая откроется в Excel Код одним блоком внутри (далее). (далее…)
Categories: PHP Tags: , ,