Использование регулярных выражений для поиска данных

Статус
В этой теме нельзя размещать новые ответы.

Bloody

Новичок
Использование регулярных выражений для поиска данных

На странице имеется поле
PHP:
...
<select name="name">
<option value=1>value1
<option value=2>value2
<option value=3>value3
...
</select>
...
[php]
Я знаю только имя этого селекта... И мне нужно скриптом, вероятно с пом-ю рег. выр., вытащить <option value=1>value1, ...2, ...3 в массив array('<option value=1>value1', '<option value=2>value2', '<option value=3>value3')
Кто может, помогите... В поиске столько всякой лабуды... А мануалы читать вообще некогда... :( Please help!!!
 

akd

dive now, work later
Команда форума
Bloody, какой ты весь занятой. просто страшно даже помогать такому занятому человеку. :)
 

Wicked

Новичок
что хоть сделать то пытаешься? зачем тебе дались эти optionы?
 

Bloody

Новичок
Нужно сделать такое же поле на другой странице, и чтобы одна форма зависела от исходной
 

XStudent

Новичок
Значение, которое ты хочешь узнать.
В скрипт, который обрабатывает твою форму, html-код не поступает. В него поступают только значения из формы. И если ты выбрал в селекте один из пунктов, то именно это значение и будет содержаться в переменной $_POST['название_поля']
 

Bloody

Новичок
Да не... Я хочу открыть страницу как файл, потом зная только имя селекта найти его и соответствующие ему оптионы, а затем все это поместить в массив для дальнейшей работы...
 

XStudent

Новичок
Ясно.
В этом случае я бы сделал действительно регулярным выражением.
Ты уверен, что у тебя селект выглядит только так? Вариации на тему <select name="name" class="myclass"> возможны?
Может, так попробовать:
$Page - страница с кодом
preg_match("/name=\"name\".+>(.+)</select>/", $Page, $opt);
Надо попробовать, почитай про регулярные выражения.....
 

Bloody

Новичок
Вот так то я как раз и написал :) Но $Page - это страница не только с селектом... Хотя в $opt[0] должно бы все нужное содержаться, но там почему то пусто...

-~{}~ 21.09.06 23:58:

Нашелся ответ...

ereg (".*(<select.*name=[\"|\'| ]".$rubr."[\"|\'| ]>(.+)<\/select>)", $buffer, $opt_array);

все вроде работает, даже если сразу после селекта стоит еще что нибудь, но вот когда после name='xxx' хоть что нибудь стоит, даже пробел, то получается косяк...
и даже вставка .* после ...$rubr."[\"|\'| ] и до >(.+)<\/sel... не помогает :(
Помогите разобраться!!!
 

Фанат

oncle terrible
Команда форума
"все это поместить в массив для дальнейшей работы" надо ДО того, как выводится первый селект.
и выводить все селекты из этого массива
 

akd

dive now, work later
Команда форума
Фанат, я так понимаю, содержимое селекта тырится с чужой страницы.
 

XStudent

Новичок
akd
Бывает, а ты PR сам расчитываешь? Или все таки из страницы для гугль-бара вытаскиваешь?
 

Фанат

oncle terrible
Команда форума
Тема закрыта.

Проблемы личного характера и бессмысленные споры между участниками не являются предметом обсуждения форума.
Обсуждайте их в привате.
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху