![]() |
![]() ![]() |
![]() |
--Cypis-- |
![]()
Post
#1
|
Goście ![]() |
<?
Witam, Napisałem prosty skrypt, który sprawdza dostępność adresu www:
W linku który jest parametrem występuje przekierowanie 301 i zwraca pusty wynik jednak, jakoś preg_match widzi jego zawartość, gdyż jeśli na stronie występuje słowo 'przepraszamy' identyfikuje stronę jako niedziałająca, a jeśli go nie ma jako działającą. Byłoby ok, ale część stron zwraca status 404 i dlatego postanowiłem dodać po preg_match regułkę: , czyli mamy coś takiego:
Niestety po dodaniu tej reguły skrypt identyfikuje wszystkie strony jako błąd (jak mówiłem wcześniej echo $nazwa = file_get_contents($i); zwraca pusty wynik, więc niby pasuje, że zwraca błąd, ale preg_match jakoś widzi wszystko) Rozwiązaniem jest np. zastąpienie empty($nazwa)) czymś co rozpozna, że dana strona ma status 404. Jak to można wykonać ? P.S. Dlaczego mimo że $nazwa teoretycznie jest pusta, preg_match widzi jej zawartość i działa na niej ? ?> |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 2 958 Pomógł: 574 Dołączył: 23.09.2008 Skąd: wiesz, że tu jestem? Ostrzeżenie: (0%) ![]() ![]() |
najpierw zobacz jak działa preg_match LINK
|
|
|
--Cypis-- |
![]()
Post
#3
|
Goście ![]() |
Hmm... działa jak trzeba.
U mnie jeśli na stronie występuje string pasujący do wzorca wykonuje się pewna część kodu i działa to jak najbardziej ok, mimo iż nie wiem dlaczego tak się dzieje. Mam tylko problem, gdyż nie wiem jak sprawdzić czy dana strona zwraca błąd 404. |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 19.07.2025 - 17:09 |