Архив рубрики: Скрипты, cms

Работа с куками (cookie) в Zend Framework

Для установки куки необходимо:

$cookie = new Zend_Http_Cookie('name',
    'value',
    '.site.ru',
    time() + 7200,
    '/'
);
$this->getResponse()->setHeader('Set-Cookie', $cookie->__toString());
//Для передачи всех данных нужно использовать
$this->getResponse()->setHeader('Set-Cookie', $cookie->__toStringFull());

Читать далее

Обрезание писем в Zend_mail

Обнаружил интересную проблему, некоторая часть писем с сайта доходит не полностью, письма обрезались на самом интересном месте.

Письма отправляются через Zend_Mail. Используется дефолтовый транспорт. Кодировка писем KOI8-R.

Методом перебора определил, что письмо обрезалось после знаков №, – , и нестандартных кавычек.

Таким образом проблема решается очисткой содержимого письма, следующим кодом:


	$a = str_replace('№', 'N', $a);
	$a = str_replace("–", '_', $a);
	$a = str_replace(array('«','»','„','“'), '"', $a);

Не попадайтесь на такое.

Редирект на сайт используя google

Обнаружил интересный редирект на другие сайты:

itif.ru>>

Добиться этого можно вставляю в url такой код, (вместо http://itif.ru/ можно написать свой сайт)

http://www.google.com/url?sa=D&q=http://itif.ru/

С помощью этого редиректа можно переделывать все ссылки от “комментаторов” на сайте.

Работа с переменными в Smarty

Инициализация новой переменной в Smarty и ее дальнейшее использование происходит таки образом:

{assign var=idCont value=$this->get(‘idContent’)}
{assign var=Par value=$this->getParent($idCont)}

Еще по переменным в Smarty

{$foo} <– отображение простой переменной (не массив и не объект)
{$foo[4]} <– отображает 5-й элемент числового массива
{$foo.bar} <– отображает значение ключа “bar” ассоциативного массива, подобно PHP $foo[‘bar’]
{$foo.$bar} <– отображает значение переменного ключа массива, подобно PHP $foo[$bar]
{$foo->bar} <– отображает свойство “bar” объекта
{$foo->bar()} <– отображает возвращаемое значение метода “bar” объекта
{#foo#} <– отображает переменную “foo” конфигурационного файла
{$smarty.config.foo} <– синоним для {#foo#}
{$foo[bar]} <– синтаксис доступен только в цикле section, см. {section}
{assign var=foo value=’baa’}{$foo} <– отображает “baa”, см. {assign}
{“foo”} <– статические значения также разрешены

Математические операции с переменными:
Читать далее

OpenX: баннер накладывается на элементы дизайна

Для этого необходимо установить прозрачность баннера.

В OpenX 2.8.5 это делается следующим образом:
при добавлении баннера в “параметры баннера”, необходимо поставить галочку “Разрешить прозрачный фон”

Импорт больших файлов в phpmyadmin

Если в импорте в phpmyadmin стоит ограничение “(Максимальный размер: 2,024 КБ)”, то его можно увеличить изменив настройки в php.ini:

; Максимальный размер данных POST, который PHP сможет принять.
post_max_size = 32M

; Максимальный размер закачанного файла
upload_max_filesize = 32M

Также можно изменить:

в конф файле phpMyAdmin (config.inc.php)
$cfg[‘ExecTimeLimit’]    = 0;

Ошибка 500 в OpenX 2.8.5

После установки рекламной системы openx 2.8.5, при заходе в админку появлялась ошибка 500.

В логах записывалась следующая ошибка:

[Wed Jun 30 20:04:34 2010] [error] [client **.***.**.***] SoftException in Application.cpp:227: Directory “/h/turby/htdocs/openx/www/admin/plugins/oxMarket” is writeable by group

Решилась проблема установкой прав 711, на папку:

htdocs/openx/www/admin/plugins/oxMarket

Продолжаю дальше исследовать openx.