Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [html] strona bledu 404
lukash82
post
Post #1





Grupa: Zarejestrowani
Postów: 320
Pomógł: 2
Dołączył: 17.03.2006
Skąd: Siemianowice

Ostrzeżenie: (0%)
-----


Witam,

Mam takie przedszkolne pytanie...

Jeśli dana podstrona nie istnieje to przeglądarka standardowo wywala brzydką stronę 404. Wyłapuję wtedy takie przypadki i przekierowuję internautę na specjalnie przygotowaną stronę błędu 404.html. Z tym że wtedy kod odpowiedzi http = 200, bo teoretycznie wszystko jest ok. Czy takie rozwiązanie jest poprawne?

Przekierowanie robię za pomocą
  1. header("Location: 404.html");


Pozdrawiam, Ł.

Ten post edytował lukash82 4.11.2015, 12:02:25
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
lukash82
post
Post #2





Grupa: Zarejestrowani
Postów: 320
Pomógł: 2
Dołączył: 17.03.2006
Skąd: Siemianowice

Ostrzeżenie: (0%)
-----


Witam,

Muszę odgrzać kotleta...

Próbuję już na milion sposobów i dalej nie mogę sobie z tym 404 poradzić. Mam taką konstrukcję (w mega uproszczeniu bez zapytań, etc.):

  1. $result = mysql_query(SELECT...) or die(mysql_error());
  2. $row = mysql_fetch_array($result);
  3.  
  4. // jeśli istnieje
  5. if($row) // to wykonaj
  6.  
  7. //jeśli nie istnieje
  8. else // > 404


No i teraz jeśli podstrona nie istnieje to wykonuję tak jak napisał @Pyton_000 czyli: header("Location: 404.html",TRUE,404);

Efekt jest taki, że np. mamy adres domena.pl/kontakt, zmieniając to na domena.pl/kontakttttt otrzymuję w firebugu status 404, ale przekierowanie nie następuje. Strona zostaje na adresie domena.pl/kontakttttt. A że takiej strony fizycznie nie ma to mam pustą białą stronę...

Pytanie, jak zmusić to ustrojstwo do przekierowania na stronę 404.html. No bo tak to chyba powinno wyglądać. Jednak nawet jeśli się już uda to zrobić to tak na chłopski rozum, 404.html istnieje więc znów wtedy dostanę status 200. Już nie ogarniam tego...:/

Próbowałem też najprostszej metody podanej w milionie miejsc w necie, czyli w htaccess "error document 404", ale przy takiej powyższej konstrukcji if - else to nie działa.

Jeśli ktoś może mi pomóc to ogarnąć to będę dźwięczny.
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 14.10.2025 - 23:25