-
Come fare a sapere l'URL in PHPScritto daNon Autenticatoil 2009-11-26 20:21:00.0 alle 2009-11-26 20:21:00.0Esiste un modo per disporre, in uno script PHP, dell'URL con cui è stata chiamata la pagina?
Ho provato $_SERVER['REQUEST_URI'] ma dà sempre "/", mentre vorrei ad esempio informazioni su come la pagina è stata chiamata, con dominio e sottodominio, ad esempio
"dominio.com"
"www.dominio.com"
"ww.dominio.com" (digitato erroneamente ma porta alla home page)
"altro.dominio.com"
Cioè non vorrei sapere l'URL della pagina, che ovviamente già conosco, ma cosa l'utente ha digitato per arrivarci.-
Re: Come fare a sapere l'URL in PHP
- Scritto da:
> Cioè non vorrei sapere l'URL della pagina, che
> ovviamente già conosco, ma cosa l'utente ha
> digitato per
> arrivarci.http://lmgtfy.com/?q=php+get+url
`"la realta' non e' cosi' terrificante come vogliono farti credere" - Giambo ` - Wakko che cita Giambo-
Re: Come fare a sapere l'URL in PHPScritto daNon Autenticatoil 2009-11-26 22:29:00.0 alle 2009-11-26 22:29:00.0> > Cioè non vorrei sapere l'URL della pagina, che
> > ovviamente già conosco, ma cosa l'utente ha
> > digitato per
> > arrivarci.
>
>http://lmgtfy.com/?q=php+get+url

E in tutta quella roba c'è una pagina dico una che dia la risposta?
-
-
Re: Come fare a sapere l'URL in PHPScritto daThe LichÜbermenschil 2009-11-26 20:33:00.0 alle 2009-11-26 20:33:00.0Trollate totali: 21351
- Scritto da:
> Esiste un modo per disporre, in uno script PHP,
> dell'URL con cui è stata chiamata la
> pagina?
>
> Ho provato $_SERVER['REQUEST_URI'] ma dà sempre
> "/", mentre vorrei ad esempio informazioni su
> come la pagina è stata chiamata, con dominio e
> sottodominio, ad
> esempio
>
> "dominio.com"
> "www.dominio.com"
> "ww.dominio.com" (digitato erroneamente ma porta
> alla home
> page)
> "altro.dominio.com"
>
> Cioè non vorrei sapere l'URL della pagina, che
> ovviamente già conosco, ma cosa l'utente ha
> digitato per
> arrivarci.
ma che OOecho '<pre>'; print_r($_REQUEST); echo '</pre>';
e ti trovi il campo che ti serve
The Lich™
« Non è morto ciò che in eterno può attendere,
e col passare di strani eoni, anche la morte può morire. »

-
Re: Come fare a sapere l'URL in PHPScritto daNon Autenticatoil 2009-11-26 22:11:00.0 alle 2009-11-26 22:11:00.0>
echo '<pre>'; > print_r($_REQUEST); > echo '</pre>'; >
Array
(
)
-
Re: Come fare a sapere l'URL in PHPScritto daThe LichÜbermenschil 2009-11-27 19:54:00.0 alle 2009-11-27 19:54:00.0Trollate totali: 21351
-
Re: Come fare a sapere l'URL in PHPScritto daNon Autenticatoil 2009-11-27 20:46:00.0 alle 2009-11-27 20:46:00.0> ah giusto era $_SERVER
Provati tutti i possibili array. Ovvio che ho anche cercato su Google: è pieno di pagine in cui uno pone la mia stessa domanda e gli si suggeriscono soluzioni che fanno cose diverse, ad esempio ricostruire l'informazione in base alle varie variabili in $_SERVER. Ma da quanto ho visto in questo array non c'è una variabile che dica ciò che l'utente ha digitato nel browser, letteralmente, errori compresi.
> bah dovrei fare un po' di ferie, peccato non le
> concedano
È un problema comune a molti, anche qui una ricerca su Google non porta a suggerimenti utili.
-
Re: Come fare a sapere l'URL in PHPScritto daThe LichÜbermenschil 2009-11-27 21:01:00.0 alle 2009-11-27 21:01:00.0Trollate totali: 21351
- Scritto da:
> > ah giusto era $_SERVER
>
> Provati tutti i possibili array. Ovvio che ho
> anche cercato su Google: è pieno di pagine in cui
> uno pone la mia stessa domanda e gli si
> suggeriscono soluzioni che fanno cose diverse, ad
> esempio ricostruire l'informazione in base alle
> varie variabili in $_SERVER. Ma da quanto ho
> visto in questo array non c'è una variabile che
> dica ciò che l'utente ha digitato nel browser,
> letteralmente, errori
> compresi.
??? ma che cosa vorresti tirare fuori?
se uno sbaglia a scrivere il nome di dominio non bastano tutte le variabili superglobali del mondo a fartelo sapere, a meno che tu non registri tutte le possibili varianti e/o errori più comuni di battitura, come domini tuoi
> > bah dovrei fare un po' di ferie, peccato non le
> > concedano
>
> È un problema comune a molti, anche qui una
> ricerca su Google non porta a suggerimenti utili.
>
estiqatsi, ho 6 giorni di ferie da fare, ancora
anzi 6 giorni e mezzora, mi pare
The Lich™
« Non è morto ciò che in eterno può attendere,
e col passare di strani eoni, anche la morte può morire. »

-
Re: Come fare a sapere l'URL in PHPScritto daNon Autenticatoil 2009-11-27 21:49:00.0 alle 2009-11-27 21:49:00.0> ??? ma che cosa vorresti tirare fuori?
Tempo fa avevo un dominio puntato tramite Mydomain ad uno spazio gratuito. Mydomain permette di indirizzare tutte le richieste
dominio.com
www.dominio.com
ww.dominio.com (errore di digitazione)
info.dominio.com
(host inesistente)
allo stesso URL, che nel mio caso era spaziogratuito.com/miadirectory
. Su questo spazio gratuito girava uno script che fra le altre cose leggeva il referrer, che conteneva l'URL di Mydomain, corrispondente a ciò che l'utente aveva digitato. Era una caratteristica fortuita dovuta alla configurazione del servizio di Mydomain.
Era utile perché spesso il nome dell'host mi suggeriva ciò che gli utenti si aspettavano di trovare su quel sito (ad esempio certi digitavano pallavolo.dominio.com
e allora avevo messo un link alla locale squadra di pallavolo).
Però il redirezionamento aveva un difetto: per chissà che ragione Google indicizzava spaziogratuito.com/miadirectory
con un ranking più alto di dominio.com, e dopo un po' la maggior parte degli accessi avveniva direttamente allo spazio gratuito senza passare per dominio.com.
Allora ho messo il tutto su un altro spazio gratuito che permette di puntarvi direttamente dominio.com, senza bisogno di redirezionamenti. Però ora il referrer, quando non è una stringa vuota, dà la pagina di provenienza e non più l'informazione di prima, e mi chiedevo se ci fosse una variabile apposita.
$_SERVER['REQUEST_URI'] dovrebbe contenere proprio quell'informazione ma omette host e dominio, magari dipende dalla configurazione.
-
-
-
-
-
-
Re: Come fare a sapere l'URL in PHPScritto daNon Autenticatoil 2009-11-26 20:43:00.0 alle 2009-11-26 20:43:00.0
- Scritto da:
> Esiste un modo per disporre, in uno script PHP,
> dell'URL con cui è stata chiamata la
> pagina?
>
> Ho provato $_SERVER['REQUEST_URI'] ma dà sempre
> "/", mentre vorrei ad esempio informazioni su
> come la pagina è stata chiamata, con dominio e
> sottodominio, ad
> esempio
>
> "dominio.com"
> "www.dominio.com"
> "ww.dominio.com" (digitato erroneamente ma porta
> alla home
> page)
> "altro.dominio.com"
>
> Cioè non vorrei sapere l'URL della pagina, che
> ovviamente già conosco, ma cosa l'utente ha
> digitato per
> arrivarci.
Ancora c'è gente che usa quello schifo di PHP?
-
Re: Come fare a sapere l'URL in PHPScritto daThe LichÜbermenschil 2009-11-26 20:48:00.0 alle 2009-11-26 20:48:00.0Trollate totali: 21351
- Scritto da:
>
> - Scritto da:
> > Esiste un modo per disporre, in uno script PHP,
> > dell'URL con cui è stata chiamata la
> > pagina?
> >
> > Ho provato $_SERVER['REQUEST_URI'] ma dà sempre
> > "/", mentre vorrei ad esempio informazioni su
> > come la pagina è stata chiamata, con dominio e
> > sottodominio, ad
> > esempio
> >
> > "dominio.com"
> > "www.dominio.com"
> > "ww.dominio.com" (digitato erroneamente ma porta
> > alla home
> > page)
> > "altro.dominio.com"
> >
> > Cioè non vorrei sapere l'URL della pagina, che
> > ovviamente già conosco, ma cosa l'utente ha
> > digitato per
> > arrivarci.
>
> Ancora c'è gente che usa quello schifo di PHP?
tu cosa usi? scommetto asp
The Lich™
« Non è morto ciò che in eterno può attendere,
e col passare di strani eoni, anche la morte può morire. »

-
Re: Come fare a sapere l'URL in PHPScritto daNon Autenticatoil 2009-11-26 22:25:00.0 alle 2009-11-26 22:25:00.0- Scritto da: The Lich
>
> - Scritto da:
> >
> > - Scritto da:
> > > Esiste un modo per disporre, in uno script
> PHP,
> > > dell'URL con cui è stata chiamata la
> > > pagina?
> > >
> > > Ho provato $_SERVER['REQUEST_URI'] ma dà
> sempre
> > > "/", mentre vorrei ad esempio informazioni su
> > > come la pagina è stata chiamata, con dominio e
> > > sottodominio, ad
> > > esempio
> > >
> > > "dominio.com"
> > > "www.dominio.com"
> > > "ww.dominio.com" (digitato erroneamente ma
> porta
> > > alla home
> > > page)
> > > "altro.dominio.com"
> > >
> > > Cioè non vorrei sapere l'URL della pagina, che
> > > ovviamente già conosco, ma cosa l'utente ha
> > > digitato per
> > > arrivarci.
> >
> > Ancora c'è gente che usa quello schifo di PHP?
>
>
> tu cosa usi? scommetto asp
>
> The Lich™
> « Non è morto ciò che in eterno può
> attendere,
> e col passare di strani eoni, anche la morte può
> morire. »
>
> [img]http://www.gamewyrd.com/previews/bottledimp/i
ruby on rails, testa di minimì-
Re: Come fare a sapere l'URL in PHPScritto daThe LichÜbermenschil 2009-11-27 20:58:00.0 alle 2009-11-27 20:58:00.0Trollate totali: 21351
- Scritto da:
> - Scritto da: The Lich
> >
> > - Scritto da:
> > >
> > > - Scritto da:
> > > > Esiste un modo per disporre, in uno script
> > PHP,
> > > > dell'URL con cui è stata chiamata la
> > > > pagina?
> > > >
> > > > Ho provato $_SERVER['REQUEST_URI'] ma dà
> > sempre
> > > > "/", mentre vorrei ad esempio informazioni
> su
> > > > come la pagina è stata chiamata, con
> dominio
> e
> > > > sottodominio, ad
> > > > esempio
> > > >
> > > > "dominio.com"
> > > > "www.dominio.com"
> > > > "ww.dominio.com" (digitato erroneamente ma
> > porta
> > > > alla home
> > > > page)
> > > > "altro.dominio.com"
> > > >
> > > > Cioè non vorrei sapere l'URL della pagina,
> che
> > > > ovviamente già conosco, ma cosa l'utente ha
> > > > digitato per
> > > > arrivarci.
> > >
> > > Ancora c'è gente che usa quello schifo di
> PHP?
>
> >
> >
> > tu cosa usi? scommetto asp
> >
>
> ruby on rails, testa di minimì
un linguaggio di programmazione per chio non ha voglia di fare una fava
The Lich™
« Non è morto ciò che in eterno può attendere,
e col passare di strani eoni, anche la morte può morire. »

-
-
-
-
Re: Come fare a sapere l'URL in PHP
- Scritto da:
> Esiste un modo per disporre, in uno script PHP,
> dell'URL con cui è stata chiamata la
> pagina?
>
> Ho provato $_SERVER['REQUEST_URI'] ma dà sempre
> "/", mentre vorrei ad esempio informazioni su
> come la pagina è stata chiamata, con dominio e
> sottodominio, ad
> esempio
>
> "dominio.com"
> "www.dominio.com"
> "ww.dominio.com" (digitato erroneamente ma porta
> alla home
> page)
> "altro.dominio.com"
>
> Cioè non vorrei sapere l'URL della pagina, che
> ovviamente già conosco, ma cosa l'utente ha
> digitato per
> arrivarci.
Prenditi i sorgenti di zend framework e guardati il codice delle classi Zend_controller_router_*-
Re: Come fare a sapere l'URL in PHPScritto daNon Autenticatoil 2009-11-27 21:34:00.0 alle 2009-11-27 21:34:00.0> Prenditi i sorgenti di zend framework e guardati
> il codice delle classi
> Zend_controller_router_*
See see, grazie del consiglio ma mica sono un programmatore così peloso.-
Re: Come fare a sapere l'URL in PHP- Scritto da:
> > Prenditi i sorgenti di zend framework e guardati
> > il codice delle classi
> > Zend_controller_router_*
>
> See see, grazie del consiglio ma mica sono un
> programmatore così
> peloso.
Zend_Controller_Request_Httppublic function setRequestUri($requestUri = null) { if ($requestUri === null) { if (isset($_SERVER['HTTP_X_REWRITE_URL'])) { // check this first so IIS will catch $requestUri = $_SERVER['HTTP_X_REWRITE_URL']; } elseif ( // IIS7 with URL Rewrite: make sure we get the unencoded url (double slash problem) isset($_SERVER['IIS_WasUrlRewritten']) && $_SERVER['IIS_WasUrlRewritten'] == '1' && isset($_SERVER['UNENCODED_URL']) && $_SERVER['UNENCODED_URL'] != '' ) { $requestUri = $_SERVER['UNENCODED_URL']; } elseif (isset($_SERVER['REQUEST_URI'])) { $requestUri = $_SERVER['REQUEST_URI']; // Http proxy reqs setup request uri with scheme and host [and port] + the url path, only use url path $schemeAndHttpHost = $this->getScheme() . '://' . $this->getHttpHost(); if (strpos($requestUri, $schemeAndHttpHost) === 0) { $requestUri = substr($requestUri, strlen($schemeAndHttpHost)); } } elseif (isset($_SERVER['ORIG_PATH_INFO'])) { // IIS 5.0, PHP as CGI $requestUri = $_SERVER['ORIG_PATH_INFO']; if (!empty($_SERVER['QUERY_STRING'])) { $requestUri .= '?' . $_SERVER['QUERY_STRING']; } } else { return $this; } } elseif (!is_string($requestUri)) { return $this; } else { // Set GET items, if available if (false !== ($pos = strpos($requestUri, '?'))) { // Get key => value pairs and set $_GET $query = substr($requestUri, $pos + 1); parse_str($query, $vars); $this->setQuery($vars); } } $this->_requestUri = $requestUri; return $this; }-
Re: Come fare a sapere l'URL in PHP
- Scritto da: kotaro
> - Scritto da:
> > > Prenditi i sorgenti di zend framework e
> guardati
> > > il codice delle classi
> > > Zend_controller_router_*
> >
> > See see, grazie del consiglio ma mica sono un
> > programmatore così
> > peloso.
>
> Zend_Controller_Request_Http
>
>
>public function setRequestUri($requestUri = > null) > { > if ($requestUri === null) { > if > (isset($_SERVER['HTTP_X_REWRITE_URL'])) { // > check this first so IIS will > catch > $requestUri = > $_SERVER['HTTP_X_REWRITE_URL']; > } elseif ( > // IIS7 with URL Rewrite: make > sure we get the unencoded url (double slash > problem) > > isset($_SERVER['IIS_WasUrlRewritten']) > && > $_SERVER['IIS_WasUrlRewritten'] == > '1' > && > isset($_SERVER['UNENCODED_URL']) > && $_SERVER['UNENCODED_URL'] != '' > ) { > $requestUri = > $_SERVER['UNENCODED_URL']; > } elseif > (isset($_SERVER['REQUEST_URI'])) > { > $requestUri = > $_SERVER['REQUEST_URI']; > // Http proxy reqs setup request > uri with scheme and host [and port] + the url > path, only use url > path > $schemeAndHttpHost = > $this->getScheme() . '://' . > $this->getHttpHost(); > if (strpos($requestUri, > $schemeAndHttpHost) === 0) > { > $requestUri = > substr($requestUri, > strlen($schemeAndHttpHost)); > } > } elseif > (isset($_SERVER['ORIG_PATH_INFO'])) { // IIS 5.0, > PHP as > CGI > $requestUri = > $_SERVER['ORIG_PATH_INFO']; > if > (!empty($_SERVER['QUERY_STRING'])) > { > $requestUri .= '?' . > $_SERVER['QUERY_STRING']; > } > } else { > return $this; > } > } elseif (!is_string($requestUri)) { > return $this; > } else { > // Set GET items, if available > if (false !== ($pos = > strpos($requestUri, '?'))) > { > // Get key => value pairs and set > $_GET > $query = substr($requestUri, $pos > + > 1); > parse_str($query, $vars); > $this->setQuery($vars); > } > } > > $this->_requestUri = $requestUri; > return $this; > }

Beh, è li nascosto...
-
-
-
-