Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 15
  1. #1

    [PHP] Variabile che contiene l'intero url?

    Magari è una domanda stupida, ma non sono riuscito a trovare nessuna variabile d'ambiente (di quelle $_SERVER o $_ENV) che contenga l'url completo attraverso cui è giunta la richiesta al server.

    Ad esempio, se richiamo
    http://aaa.esempio.com/dir/index.php

    mi servirebbe una variabile che contenesse proprio
    http://aaa.esempio.com/dir/index.php

    o almeno
    http://aaa.esempio.com/dir

    Questa variabile esiste o no?

  2. #2
    Concatenare più variabili non va bene ?
    Addio Aldo, amico mio... [03/12/70 - 16/08/03]

  3. #3
    [supersaibal]Originariamente inviato da gm
    Concatenare più variabili non va bene ? [/supersaibal]
    Mi andrebbe bene, ma non sono sicuro che ce ne sia una che contenga il dominio completo in tutte le sue parti (da concatenare poi con REQUEST_URI).

    HTTP_HOST secondo te contiene tutto?
    Sono in locale e non ho voglia di smandruppare nel file hosts

  4. #4
    Al volo, una cosa del genere dovrebbe andare bene

    codice:
    echo 'http://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'];
    Addio Aldo, amico mio... [03/12/70 - 16/08/03]

  5. #5
    L'ho appena provata su un dominio di terzo livello e sembra ok
    Addio Aldo, amico mio... [03/12/70 - 16/08/03]

  6. #6
    ok, grazie ammmore

    Un'altra cosa, sempre in tema.
    Questa cosa che mi hai appena detto in presenza di rewrite engine ovviamente va a farsi benedire, nel senso che il contenuto di host e uri visti dallo script sono quelli fisici, non quelli usati dall'utente nel suo browser, giusto?

    Ecco, nelle rewrite_rule posso passare a uno script una variabile che contenga l'url usato dall'utente?

  7. #7
    [supersaibal]Originariamente inviato da skidx
    Un'altra cosa, sempre in tema.
    Questa cosa che mi hai appena detto in presenza di rewrite engine ovviamente va a farsi benedire, nel senso che il contenuto di host e uri visti dallo script sono quelli fisici, non quelli usati dall'utente nel suo browser, giusto?

    Ecco, nelle rewrite_rule posso passare a uno script una variabile che contenga l'url usato dall'utente? [/supersaibal]
    Credo di si, ma non ho certezze.

    Indi per cui la mia risposta illuminante è: prova
    Addio Aldo, amico mio... [03/12/70 - 16/08/03]

  8. #8
    Sì, si può, si possono passare le variabili %{HTTP_HOST} e %{REQUEST_URI} come se fossero delle normali back reference tipo $1, $2, etc. etc.

  9. #9
    Utente di HTML.it L'avatar di M4rko
    Registrato dal
    Dec 2000
    Messaggi
    619
    Attenzione che se sei su IIS non c'è REQUEST_URI

    In tal caso te la devi giocare con $_SERVER['SCRIPT_NAME'] e $_SERVER['QUERY_STRING'], quest'ultima valorizzata solo se c'è una query string

    Inoltre, se vuoi proprio sboroneggiare, puoi fare una cosa del genere:
    codice:
    echo 'http' . ((@$_SERVER['HTTPS'] == 'on') ? 's' : '') . '://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'];
    mi pare di non aver dimenticato niente (salvo errori di battitura)
    edit: avevo fatto qualche danno con le tonde
    ri-edit: ritiro quello che avevo scritto sul server_port
    Tutti hanno bisogno di credere in qualcosa.
    Io credo che mi farò un'altra birra.


  10. #10
    [supersaibal]Originariamente inviato da M4rko
    Attenzione che se sei su IIS non c'è REQUEST_URI
    Se sta su IIS gli tolgo il saluto
    Inoltre, se vuoi proprio sboroneggiare, puoi fare una cosa del genere:
    [/supersaibal]
    Addio Aldo, amico mio... [03/12/70 - 16/08/03]

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.