RFpro.ru: Программирование на PHP

  Все выпуски  

RusFAQ.ru: Программирование на PHP


РАССЫЛКИ ПОРТАЛА RUSFAQ.RU

/ КОМПЬЮТЕРЫ И ПО / Языки программирования / PHP

Выпуск № 488
от 15.10.2006, 06:35

Администратор:Калашников О.А.
В рассылке:Подписчиков: 374, Экспертов: 51
В номере:Вопросов: 5, Ответов: 8


Вопрос № 58235: Доброго времени суток. Делаю замену bb-кодов при помощи str_replace а вот как выполнить замену [color=blue] и прочих цветов? В регулярных выражениях ноль....
Вопрос № 58263: Здравствуйте, уважаемые Эксперты! Давно не посещал форум - оказывается не работает почтовый ящик... хмм бум искать новый... Но есть срочный вопрос :( точнее 4 (!) не ругайте сильно, задам в одном флаконе... потому что придется отсле...
Вопрос № 58299: Здравствуйте! Помогите написать скрипт. Есть файл input.txt в котором содержится несколько десятков тысяч строк, это в основной адреса почтовых ящиков, но есть также номера телефонов и адреса сайтов, а также пустые строки. Нужен скрипт который на...
Вопрос № 58328: Доброго Вам времени суток, уважаемые эксперты. У меня такой вопрос: Нужно создать скрипт который бы упорядочивал список слов в алфавитном порядке (например список литературы из MS Word). Подскажите общий алгоритм, и как извлекать элемент из списк...
Вопрос № 58334: Приветствую! У меня есть база с новостями за 6 лет. Новости конечно же не ежедневные, но тем не менее. Дата хранится в MySQL'овском формате datetime. Вопрос вот в чем. Хотелось бы чтобы архив выглядел в виде календаря со ссылками на тех днях, на каки...

Вопрос № 58.235
Доброго времени суток.
Делаю замену bb-кодов при помощи str_replace
а вот как выполнить замену [color=blue] и прочих цветов?
В регулярных выражениях ноль.
Отправлен: 09.10.2006, 11:07
Вопрос задал: Алексеенко С.Ю. (статус: 8-ой класс)
Всего ответов: 4
Мини-форум вопроса >>> (сообщений: 2)

Отвечает: Асташов Андрей Александрович
Здравствуйте, Алексеенко С.Ю.!

Попробуйте вот так:

preg_replace("#[color=(#?[w]+)](.*?)[/color]#si"
"$2", $text);
Удачи.
---------
Бросил курить сам - Брось курить другому!!!
Ответ отправил: Асташов Андрей Александрович (статус: Студент)
Ответ отправлен: 09.10.2006, 11:38
Оценка за ответ: 5
Комментарий оценки:
Отлично в сочетании с минифорумом.

Отвечает: Punk_UnDead
Здравствуйте, Алексеенко С.Ю.!
буду краток(с)
только код

Приложение:

---------
всё испытано на себе

Ответ отправил: Punk_UnDead (статус: 2-ой класс)
Ответ отправлен: 09.10.2006, 11:49
Оценка за ответ: 4
Комментарий оценки:
я же написал - полный ноль, бездумно копировать код не люблю, хотел бы хотя бы краткие комменты.

Отвечает: Загиров Рустам
Здравствуйте, Алексеенко С.Ю.!
Почитайте статьи по регулярным выражениям на сайте php.su и на www.softtime.ru.
Код есть в приложении, но объянять чего-либо по нему толку нет...Прочитав статьи не поймёте, как обходились раньше без регулярных выражений:)

Приложение:

---------
Этот мир обречён на нас
©Сергей Маврин

Ответ отправил: Загиров Рустам (статус: Практикант)
Ответ отправлен: 09.10.2006, 12:13

Отвечает: Cimus
Здравствуйте, Алексеенко С.Ю.!
Посмотрите приложение в ответе Рустама, если что-то станет непонятно то пишите в минм-форум.
Просто я не смог отправить свой ответ полностью.


---------
Достичь можно любых высот !
Ответ отправил: Cimus (статус: 8-ой класс)
Ответ отправлен: 10.10.2006, 02:59


Вопрос № 58.263
Здравствуйте, уважаемые Эксперты!

Давно не посещал форум - оказывается не работает почтовый ящик... хмм бум искать новый...

Но есть срочный вопрос :( точнее 4 (!) не ругайте сильно, задам в одном флаконе... потому что придется отслеживать Ваши ответы через "поиск номера вопроса" :( ...

1. Пытаюсь запустить сессию см. приложение... сессия, вроде как есть, - но результат не выводится. При этом в /var/lib/php/session сессионый файл появляется! :(.

2. По нажатию кнопки в форме (верхний фрейм) - загружаю в левый фрейм панель интсрументов - как сразу же обновить и тело (body) фрейм? Никак не получается... ведь у формы - action только для для обработки в одной форме?
P.S. Знаю фреймы не приветствуются, но НАДО :(.

3. Как сохранить текст пользователя - хотя бы с абзацами? Использую:
$text1=mysql_real_escape_string($text1); - результат сплошной текст :(. Пробовал и без этого - то же самое.

4. Пишу:
echo ""; -- не приходит! А если "1" - приходит... :(.

Если же я хочу передать ДВА параметра, тоже не приходит! :(
echo "";
echo "";

P.S. А еще говорят PHP самый простой язык :)))

Приложение:

Отправлен: 09.10.2006, 15:00
Вопрос задал: LanK (статус: Студент)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 5)

Отвечает: PVS
Здравствуйте, LanK!
1.Если register_globals выключен, то Вы должны работать напрямую с массивом $_SESSION, тоесть присвоение: $_SESSION['test']=$test , чтение: echo $_SESSION

2.JavaScript'ом. Или используйте вложеные fameset'ы (по нажатию кнопки в верхнем фрейме обновляется нижний, который, в свою очередь содержит frameset из левого и правого)

3.nl2br(mysql_real_escape_string($text1))

4.Вставте где-нибудь в конце скрипта phpinfo() и посмотрите на содержание массива $_REQUEST - если там нет, значит действительно не приходит, но это из раздела научной фантастики, скорее всего Вы что-то не то проверяете

P.S. самый простой язык - обыкновенный BASIC, но на нем Вы ничего хорошего не напишете
Ответ отправил: PVS (статус: Студент)
Ответ отправлен: 09.10.2006, 15:29


Вопрос № 58.299
Здравствуйте!
Помогите написать скрипт. Есть файл input.txt в котором содержится несколько десятков тысяч строк, это в основной адреса почтовых ящиков, но есть также номера телефонов и адреса сайтов, а также пустые строки. Нужен скрипт который находясь в одной папке с вышеназванным файлом при записке генерировал бы файл output.txt в котором в каждой строчке и без пробелов находились бы одни адреса почтовых ящиков. Своеобразный фильтр.
Как все это реализовать? Я думаю отимальным будет проверять строчку на присутствие "@", если да то дописывать в выходной файл, если нет то переходить к следующей строке. (это просто мои мысли)
Отправлен: 09.10.2006, 19:00
Вопрос задал: Valeraorg (статус: 3-ий класс)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Марк Крейн
Здравствуйте, Valeraorg1!
В целом правильно мыслите. Только когда будете обрабатывать скрипт, заблокируйте его от внешних вторжений функцией flock примерно так:

<?php
$file=fopen("input.txt", "r");
$file_out=fopen("output.txt", "w);
flock($file, LOCK_SH);
flock($file_out, LOCK_EX);
//здесь обработка скрипта. считываем весь файл построчно в массив:
$file_array=file("input.txt");
...
?>
Дальше словами подскажу. Проверяете каждый элемент массива $file_array на наличие в нём знака "@". Если он есть, тогда вам нужно дописать в выходной файл именно адрес email. Т.е. надо проверить длину адреса, и именно столько символов записать в выходной файл. Ну и по окончании каждой строки нужно дописать символ " " - переход на новую строку. Когда весь процесс закончится, оба файла необходимо закрыть функцией fclose(). Так как исходный файл очень большой, то желательно увеличить время выполнения скрипта в php.ini - поставьте на всякий случай хотя бы 60 секунд, чтобы быть точно уверенным что скрипт всё успеет обработать.

Удачи!
Ответ отправил: Марк Крейн (статус: Практикант)
Ответ отправлен: 09.10.2006, 21:11


Вопрос № 58.328
Доброго Вам времени суток, уважаемые эксперты. У меня такой вопрос:
Нужно создать скрипт который бы упорядочивал список слов в алфавитном порядке (например список литературы из MS Word). Подскажите общий алгоритм, и как извлекать элемент из списка?
Например простая фильтрация по номеру с точкой не прокатит, т.к. в элементе из списка может стоять дата с точкой на конце.

Заранее Вам благодарен
Отправлен: 10.10.2006, 00:12
Вопрос задал: Antoxa (статус: Посетитель)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: HookEst
Здравствуйте, Antoxa!
Не уверен, что правильно понял формат списка, но наверное каждый элемент разделяется концом строки.
Может этот пример на PHP(согласно теме рассылки) Вам поможет?

Приложение:

Ответ отправил: HookEst (статус: 4-ый класс)
Ответ отправлен: 10.10.2006, 08:05
Оценка за ответ: 5


Вопрос № 58.334
Приветствую! У меня есть база с новостями за 6 лет. Новости конечно же не ежедневные, но тем не менее. Дата хранится в MySQL'овском формате datetime. Вопрос вот в чем. Хотелось бы чтобы архив выглядел в виде календаря со ссылками на тех днях, на какие в базе есть новости. Может быть есть уже какое-нибудь готовое решение этой задачи? Посоветуйте, если знаете.
Отправлен: 10.10.2006, 01:16
Вопрос задал: Defalex (статус: Посетитель)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Jeka911
Здравствуйте, Defalex!

Попробуйте вот это:
http://php-calendar.sourceforge.net/

Еще:
http://keithdevens.com/software/php_calendar

---------
Шахтер - чемпион!!!
Ответ отправил: Jeka911 (статус: 8-ой класс)
Ответ отправлен: 10.10.2006, 03:13


Отправить вопрос экспертам этой рассылки

Приложение (если необходимо):

* Код программы, выдержки из закона и т.п. дополнение к вопросу.
Эта информация будет отображена в аналогичном окне как есть.

Обратите внимание!
Вопрос будет отправлен всем экспертам данной рассылки!

Для того, чтобы отправить вопрос выбранным экспертам этой рассылки или
экспертам другой рассылки портала RusFAQ.ru, зайдите непосредственно на RusFAQ.ru.


Форма НЕ работает в почтовых программах The BAT! и MS Outlook (кроме версии 2003+)!
Чтобы отправить вопрос, откройте это письмо в браузере или зайдите на сайт RusFAQ.ru.


© 2001-2006, Портал RusFAQ.ru, Россия, Москва.
Идея, дизайн, программирование: Калашников О.А.
Email: adm@rusfaq.ru, Тел.: +7 (926) 535-23-31
Авторские права | Реклама на портале
Версия системы: 4.37 от 04.10.2006
Яндекс Rambler's Top100

В избранное