Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Wyciąganie wartości input z kodu strony HTML
Forum PHP.pl > Forum > PHP
mati0090
Witam

W kodzie źródłowym strony potrzebuję wyciągnąć pewną wartość z input hidden. Nie jest to niestety tak łatwe jak w delphi, gdyż w PHP należy użyć wyrażeń regularnych i tu zaczynają się schody.

Oto kawałek kodu w html:
  1. <input type="hidden" name="auto_form_ticket" value="490ca0ef260803b5ee383f84">


Potrzebna mi jest wartośc value.

  1. <?php
  2. preg_match_all(&#092;"/< *[input type=\"hidden\" name=\"auto_form_ticket\"][^>]*[value] *= *[\"']{0,1}([^\"' >]*)/i\",
  3. $site, $matches);
  4. ?>


Powyższy kod działa, lecz tylko wtedy gdy zmienna $site:
  1. <?php
  2. $site = '<input type="hidden" name="auto_form_ticket" value="490b5775c89b8a599e8bebd4">';
  3. ?>


W przypadku kodu całej strony, tablica $matches przybiera różne, dziwne wartości(zależne od innych tagów HTML).

Uważam, iż powinienem poznać temat wyrażeń regularnych.
Tak też uczynię, lecz teraz chciałbym dokończyć skrypt który zacząłem.

Myślę, że przy odpowiednich umiejętnościach mój problem wydaje się błahy.

Zaznaczam też, że nie tworze żadnego skryptu który ma posłużyć jako spammer.

Z góry dziękuję za odpowiedzi
Bury
lukaszgolder
Może coś takiego:
  1. <?php
  2. preg_match_all("/(<input)(.*)(value=\")(.*)(\")/", $fp, $matches, PREG_SET_ORDER);
  3. ?>

Wyświetlić wyniki możesz np tak:
  1. <?php
  2. foreach($matches as $val) {echo $val[4];}
  3. ?>
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.