PHP сообщество

любители кода :)

Подскажите пожалуйста

Bloged in Без рубрики от admin Среда Октябрь 31, 2007 at about 3:08 дп

Добрый день сообществу.
Подскажите пожалуйста скрипт рассылки новостей.
Пожелание к скрипту:
- PHP либо Perl
- Возможность рассылки как text/plain так и text/html
- Создание категорий рассылки с отдельными листами
- Возможность подписки/отписки юзеров на категории - обязательно (не спам)
- Не использование SQL

Пробовал DadaMail - но он делает multipart письмо с непроставленной кое где кодировкой
И аутлук не может кодировку автоматом поменять если письмо не в дефолтной (его) кодировке приходит.

MSSQL 2005

Bloged in Без рубрики от admin Вторник Октябрь 30, 2007 at about 2:26 пп

Доброго утра! даже не знаю, по адресу ли

Такие грабли получил: apache + php 5.2.4 + mssql. пока был sql server 2000, все было нормально. поставил sql server 2005 express - при попытке выполнить mssql_connect(…) винда мне сообщает, что апач будет закрыт… Никто не наступал на такое?

Работа с ссылками или рекурсией (?)

Bloged in Без рубрики от admin Понедельник Октябрь 29, 2007 at about 9:12 дп

Вопрос, собственно, кто как реализовывает рекурсивный проход по массиву, где может быть такая засада:

$aaa = array( 1,2,3,4 );
$aaa[4] = &$aaa;

var_dump( $aaa ); // эта сволочь знает, что это *RECURSION*!

print_r0( $aaa ) // например, это аналог print_r. циклится, естественно.
{
	$r = "";
	if( is_array( $aaa ) )
		foreach( $aaa as $k => $v )
			$r .= $k . ' = ' . print_r0( $v );
	else
		$r = $aaa;

	return $r;
}

мысли пока “тупо в лоб”: завести массив ссылок, который объявить глобально в функции, заполнять в процессе прохода по элементам, и проверять, обрабатывался ли текущий элемент. (опять же, как проще?..)

Пошукал в пхп, ничего не нашукал про сравнение ссылок… И стало совсем печально ;(…

Есть ли аккуратное решение?

UPD:
Смотрю на вар_дамповский дамп и думаю…

Есть два типа данных в пхп, где может быть рекурсия.
Либо массив, либо объект.
Если массив - можно запоминать название и кол-во элементов.
Если объект - еще проще, да и реже в объектах рекурсия.
Таким образом, получаем, что с большой долей вероятности можно определить, что это цикл и не входить в перебор его(массива/объекта) элементов.
Возникает еще один не менее важный вопрос…

Как определить, что это элемент - ссылка (&)?

UPD:
Спасибо '[info]'digital_dog за подсказку.
Суть: Помечать пройденные элементы флагом посещения.

UPD Строка исполняемоего файла. Перевели время.

Bloged in Без рубрики от admin Понедельник Октябрь 29, 2007 at about 5:57 дп

Как узнать номер строки в которой находиться сейчас интерпретатор?
Т.е. например есть следующий код
1 <?
2  function echoPre($array){
3      echo '<pre>';
4      print_r($array);
5      echo '</pre>';
6      echo '(' . realpath('') . НОМЕР СТРОКИ В КОТОРОЙ ВЫЗВАНА ЭТА ФУНКЦИЯ  . ')';
7  }
8  echopre('123');
9  ?>
Нам нужно получить НОМЕР СТРОКИ  = 8;
Возможно ли такое?

UPD что бы не создавать новую тему, спрошу в этой.
Вчера перевели время на windows машине до вчерашнего отрабатывало нормально, но сегодня что-то с датами случилось.
А именно!
PHP
date('r')   —–  UTCMon, 29 Oct 2007 03:39:14 +0000
date(”Y-m-d H:i:s”,time())     —–  2007-10-29 03:39:14
MySQL
“SELECT NOW()” —- 2007-10-29 09:39:14

Каким образом все привести к одному числу и в PHP и в MySQL?

И еще об шаблоны.

Bloged in Без рубрики от admin Понедельник Октябрь 29, 2007 at about 1:49 дп

В ходе весьма бурного обсуждения на форуме пхпклуба, где за последнее время появилось сразу несколько топиков на тему шаблонизации, были рождены две, как мне кажется, весьма небезынтересные мысли.
1. Идеальный шаблон второго типа.
никаких тебе </label>
и прочего. В шалоне испольуется ЧИСТЫЙ html!
<div id=”mmenu”>
  <ul>
     <li class=”item”><a href=”#”><sample>пункт1</sample></a></li>
  </ul>
</div>

Ведь действительно - в самом HTML есть метки, по которым можно привязываться к любым блокам!
целиком идея здесь: http://phpclub.ru/talk/showthread.php?postid=752824#post752824
недостаток у неё, пожалуй, только один - парсить придется весь документ в дом дерево, а не отдельные вставки с минимальным синтаксисом. Но идея, имхо, хороша!

2. идея, которая показалась мне вообще офигенно прекрасной, как я толко не додумался до неё сам.
ОБЪЕДИНИТЬ ОБА МЕТОДА!
Почему бы не сделать шаблон двухуровневым? То есть, это остается старый добрый второй метод с его блоками, а вот обработчиком этого минишаблона является шаблон на языке более высокого уровня!
Получается и волки сыты и овцы целы.
Если у нас тот “дизайнер”, который боится любого кда - ради бога! Пустьправит простой шаблон!
Если у нас творец, который хочет кроить отображение вслед своему полету фантазии - флаг тебе в руки и “сложный” шаблон в помощь!

Реализация такого подхода может быть весьма разнообразной. И если она сначала вам показалась неудачной - можжно попробовать прикинуть разные варианты.

Заголовки, полтергейсты

Bloged in Без рубрики от admin Суббота Октябрь 13, 2007 at about 6:49 пп

Странно, но если убиваь куки так:

то куки удаляются. А если так:

То не удаляются. Т.е. получается, что браузер игнорирует все предыдущие заголовки, если в конце находит заголовок редиректа (Location) ?

очистка от неактивных ресурсов в Socket

Bloged in Без рубрики от admin Суббота Октябрь 13, 2007 at about 4:18 пп

Здравствуйте…

Я тут сервер писал на PHP - вроде всё хорошо только непойму…
взять тот же пример из php.net
http://php.novgorod.ru/manual/ru/function.socket-select.php

// accept the client, and add him to the $clients array
$clients[] = $newsock = socket_accept($sock);

в массив всегда добавляется только новый ресурс типа
Resource id #8
Resource id #10

и если клиент вышел и вроде я очищаю все его следы всёравно добавляется только новый ресурс. Как я понимаю генерит его только команда socket_accept($sock);
которая и возвращает это новое значение. Вот у меня и вопрос а можно как то избавиться от переполнения? Чтобы небыло через 10 мин работы всяких коннектов Resource id #10322 хотя клиента тока 2.

dedicated сервер НЕ в России

Bloged in Без рубрики от admin Четверг Октябрь 11, 2007 at about 1:20 пп

Господа, выбираем dedicated сервер, и рассматриваем хорошее предложение в европейском дата центре.. может кто имел опыт dedicated хостинга в европе или в америке (да и вообще какой либо опыт) поделитесь достоинствами/недостатками по сравнению с российскими аналогами.

Проект php/mysql и рассчитан на российскую публику.

Копирайты на фото.

Bloged in Без рубрики от admin Четверг Октябрь 11, 2007 at about 12:38 пп

Всем добрый день и здравствуйте.
Почитал много умных сообщений. У меня же вопрос очень посредственный.
Хочу поставить копирайты на фотографии форума.
В принципе, через Рамблер и Гугл такой скрипт нашел, правда, он делает копирайт из текстовой строки и ставит его в момент закачки изображения.
Но так как фотографий уже прилично накоплено, мне нужен маленький скрипт, который в одной папке на все уже имеющиеся изображения поставит копирайт. Можно брать наименование копирайта из текстовой строки. Можно из другого изображения. Неважно.
Нужно хоть что-то.
Вышеозначенные поисковики (и Яндекс еже с ними) ответа не дали. Также не нашел такого скрипта на популярных сайтах скриптов. Видно, уж очень он простой.
Всем заранее благодарен.

Интересное рядом (с) php-icqBNC

Bloged in Без рубрики от admin Среда Октябрь 10, 2007 at about 8:51 пп

Вот, недавно наткнулся на такую интересную штуку (PHP):

Bouncer для icq, написанный на php, что позволяет запускать его практически на любом хостинге.

Для тех кто не знает: BNC — это бот, который будет держать ваш номер ICQ в онлайне, а когда вы вернетесь, он сообщит вам о пропущенных сообщениях.

Думаю, можно использовать как пример качественной работы с ICQ-сервером средствами PHP :)

Сайт скрипта: php-icqBNC