Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Odczyt adresu strony
Forum PHP.pl > Forum > Przedszkole
krzesik
Witam w jaki sposób odczytać adres strony na jakiej aktualnie jesteśmy czyli np. www.wp.pl/costam/skrypt.phpchciałbym odczytać to tak: www.wp.pl/costam
s1518
Zmienne srodowiskowe. Maja one konstrukcje:
  1. $_SERVER['NAZWA'];

np.
  1. $_SERVER['HTTP_HOST'];
- wyciagnie Ci nazwe hostu czyli: www.wp.pl
  1. $_SERVER['REQUEST_URI'];
dalsza czesc adresu...

Szczegóły zmiennych możesz sobie na bieżąco sprawdzac dzieki funkcji: phpinfo();
Poza tym manula: http://php.net/manual/pl/reserved.variables.server.php
krzesik
niestety odczytuje razem z nazwą pliku php......
b4rt3kk
Przejrzyj sobie całą tablicę $_SERVER i wybierz coś co Ci odpowiada.

  1. foreach ($_SERVER as $key => $value) echo $key.': '.$value.'<br/>';
tab
Ok tak to powinno wyglądać:
  1. $url1 = $_SERVER['SERVER_NAME'];
  2. $url2 = $_SERVER['PHP_SELF'];
  3. $url2 = explode(DIRECTORY_SEPARATOR, $url2);
  4. for ($i=0 ; $i<=sizeof($url2) ; $i++)
  5. {
  6. if (strpos($url2[$i], '.php') !== false)
  7. {
  8. unset($url2[$i]);
  9. }
  10. }
  11. $url2 = implode(DIRECTORY_SEPARATOR, $url2);
  12. $url = $url1 . $url2;
  13. echo $url;

Albo wersja z wyrazeniami regularnymi:
  1. $url1 = $_SERVER['SERVER_NAME'];
  2. $url2 = $_SERVER['PHP_SELF'];
  3. $url2 = explode(DIRECTORY_SEPARATOR, $url2);
  4. for ($i=0 ; $i<=sizeof($url2) ; $i++)
  5. {
  6. if (preg_match('/\.(php|php5|php4|php3)$/', $url2[$i]))
  7. {
  8. unset($url2[$i]);
  9. }
  10. }
  11. $url2 = implode(DIRECTORY_SEPARATOR, $url2);
  12. $url = $url1 . $url2;
  13. echo $url;
krzesik
Dziękuję!
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.