Форум → Программирование → PHP для идиотов → Вырезание регулярками значений hidden-полей
Вырезание регулярками значений hidden-полей
Страницы: ← Предыдущая страница →
-
Май 19, 2010, 3:48 п.п., спустя 16 минут 22 секунды
artoodetoo, молодчина!
а у меня опять коряво ((
MfcISAPICommand = SignInWelcome bhid = DEF_CI UsingSSL = 1 inputversion = 2 lse = false lsv = mid = AQAAASiEqSo+AAUxMjhiMDYxZmQxMi5hMDI2NjMwLjJjMjkyLmZmZjFmZDJhmPW2IHCHNYZj8fTYOvK85ZADSeE* kgver = 1 kgupg = 1 kgstate = omid = hmid = siteid = 0 co_partnerId = 2 ru = pp = pa1 = pa2 = pa3 = i1 = -1 pageType = -1 rtmData = kgct = MfcISAPICommand = RegisterEnterInfo co_partnerId = 2 siteid = 0 ru = bin = -1 -
Май 19, 2010, 4:18 п.п., спустя 29 минут 23 секунды
web-bee, lol :)
а у меня есть Forms.php, который специально на это заточен :)
бебебеб =)))Сапожник без сапог -
-
Май 19, 2010, 9:07 п.п., спустя 4 часа 47 минут 12 секунд
phpdude, но у меня-то Forms.php нет и мне учится и учится, чтобы хотябы на долю процента приблизится к твоему опыту и объему знаний..
а где можно взять эти "знаменитые Дудовские формы"? -
Май 19, 2010, 11:12 п.п., спустя 2 часа 5 минут 12 секунд
web-bee, не где вроде :)Сапожник без сапог -
-
-
Май 20, 2010, 3:24 п.п., спустя 10 минут 33 секунды
а у меня опять коряво ((
в смысле коряво? что-то выводится же. на строчки не бьется? так это от Content-type зависит. или надо <br/> добавить в echo ))))ιιlllιlllι унц-унц -
Май 20, 2010, 7:33 п.п., спустя 4 часа 8 минут 26 секунд
artoodetoo, спасибо, до меня это только сегодня утром дошло ))
уже всё работает как надо. спасибо Вам :-* -
Май 23, 2010, 12:25 п.п., спустя 2 дня 16 часов 52 минуты
artoodetoo, а вот с дальнейшими манипуляциями над вырезанными значениями hidden-полей возникли трудности..
на странице есть хидден-поля с одинаковыми нэймами, но разными значениями.. для блока авторизации и регистрации.
Вот name=value этих 2х блоков:
1. авторизации:MfcISAPICommand = SignInWelcome
bhid = DEF_CI
UsingSSL = 1
inputversion = 2
lse = false
lsv =
..
2. регистрации:MfcISAPICommand = RegisterEnterInfo
co_partnerId = 2
siteid = 0
..
как отсечь один блок хидден-полей от другого?
ато наглый http_build_query($param) берёт первый нэйм из блока авторизации, а значение к нему приравнивает из блока регистрации. Получается:
MfcISAPICommand=RegisterEnterInfo&bhid=DEF_CI&UsingSSL=1.. -
Май 23, 2010, 12:30 п.п., спустя 5 минут 1 секунду
Вытаскивай сначала отдельно формы, потом выбирай код нужной по имени или айди, и из нужной формы вытаскивай данные инпутовWork, buy, consume, die -
-
Май 23, 2010, 5:54 п.п., спустя 3 часа 59 минут 41 секунду
web-bee, дальше как-нибудь сам(а). не хочу проходить как соучастник )))ιιlllιlllι унц-унц -
Май 24, 2010, 12:02 п.п., спустя 18 часов 8 минут 4 секунды
artoodetoo, написала сама вот так:if ($forms=preg_split('/<form.+/U', $content)){
if (preg_match_all('/<input.+>/U', $forms[1], $matches, PREG_PATTERN_ORDER)) {
$inputs = $matches[0];
foreach ($inputs as $input) {
if (preg_match_all('/(value|type|name)="(.*?)"/', $input, $matches, PREG_PATTERN_ORDER)) {
$attribs = array_combine($matches[1], $matches[2]);
if (isset($attribs['type']) && $attribs['type'] == 'hidden') {
echo $attribs['name'] . ' = ' . $attribs['value']?><br/><?php
//$param[]=$attribs['name'] . '=' . $attribs['value'];
$param[$attribs['name']]=$attribs['value'];
}
}
}
}
}
не знаю на сколько целесообразно было preg_split() использовать.. но по-другому у меня не получалось..
я плохо написала? -
Май 29, 2010, 9:53 п.п., спустя 5 дней 9 часов 51 минуту
artoodetoo, спасибо огромное, с вашей помощью регулярки теперь сама пишу
и даже получается ))))))))
Спасибо и за пример, и за ссылку на страницу пыхофишки по вычислению регулярок.
Сейчас активно пользуюсь.
Страницы: ← Предыдущая страница →
Пожалуйста, авторизуйтесь, чтобы написать комментарий!