Newsgroup: it.comp.www.php
Titolo: catturare url variabile e riutilizzarlo come link

Ciao a tutti: ho un sito 
www.miosito.com/index.php?index_3001.html
<? echo "http://".$_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI'];  ?>
Utilizzo questo per visualizzare l'url della pagina che l'utente sta
visitando (quindi in questo caso 
www.miosito.com/index.php?index_3001.html
).
Praticamente ho bisogno di assegnare questo risultato per tutta la
durata della navigazione sul sito al link HOME.
Fin qui sarebbe semplice faccio un link come questo  <a href="<? echo
"http://".$_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI'];  ?>"> HOME
</a>   e sono a posto.
Ma il problema invece e che l'URL di entrata è variabile   ( es.
potrebbe essere index.php?index_3001.html oppure index.php?
index_3003.html oppure index.php?index_3020.html e cosi via) e quindi
devo catturare e restituire al link HOME del sito comune a tutti la
variabilità dell'indirizzo d'entrata.
Chi mi aiuta? Come posso fare?
Grazie Wylly

 ha scritto nel messaggio 
news:1180603518....@p47g2000hsd.googlegroups.com...







Grazie Wylly
-----------
Se ho capito bene...
all'inizio apri una sessione ed assegna subito ad un campo il valore di cui 
parli.
Esempio:
$_SESSION['mio_url']= $_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI'];
il resto lo sai già.
Ciao
www.salvatorepaci.it


Io ho fatto cosi'
<? $_SESSION['mio_url']= $_SERVER['SERVER_NAME'].
$_SERVER['REQUEST_URI']; ?>
<a href="<? echo "http://" .$_SESSION['mio_url']; ?>">HOME</a>
ma andando su un'altra pagina il link home punta sulla pagina dove mi
trovo... invece io vorrei che rimanesse con il primo url che ho
aprendo il sito es. 
www.miosito.com/index.php?index_3201.html
 il link
o pulsante dovrebbe mantenere 
www.miosito.com/index.php?index_3201.html
anche se vado su altre pagine, tieni presente che sto parlando di un
template comune a tutti i link e quindi il link HOME deve sempre
puntare su  
www.miosito.com/index.php?index_3201.html
 o se l'url di
entrata varia su 
www.miosito.com/index.php?index_4230.html
 o altri url
variabili. HOME deve prendere la pagina di entrata e conservarsela
anche se vado su altre pagine dello stesso sito.
Aiutami. Grazie

 $_SERVER['REQUEST_URI']; ?>
Hai avviato la sessione (con session_start()) prima di usare
l'array $_SESSION?
http://it.php.net/manual/en/function.session-start.php
Ciao.
-- 
Federico

 trovo... invece io vorrei che rimanesse con il primo url che ho
Prima di impostare la variabile di sessione, verifica che non sia gia`
presente, altrimenti la sovrascrivi ad ogni pagina richiesta: HTTP e`
stateless, non sa quali pagine hai visto prima.
<?php
session_start();
if ( ! array_key_exists($_SESSION, 'mio_url')) {
  $_SESSION['mio_url']= $_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI'];
}
?>
Codice non testato. :)
Bye.


Infatti mi dice:
Warning: session_start() [function.session-start]: Cannot send session
cookie - headers already sent by (output started at /tutto il percorso
del server/categories.php:190)
e anche
Warning: session_start() [function.session-start]: Cannot send session
cache limiter - headers already sent by (output started at /tutto il
percorso del server/categories.php:190)
se uso l'if
<?php
session_start();
if ( ! array_key_exists($_SESSION, 'mio_url'))
{
$_SESSION['mio_url']= $_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI'];
}
?>
mi dice
Warning: array_key_exists() [function.array-key-exists]: The second
argument should be either an array or an object in (output started at /
tutto il percorso del server/....)
Volevo dirti per essere precisi con tutto allora io faccio:
------------------------------------------------------------------------------
<?php
session_start();
if ( ! array_key_exists($_SESSION, 'mio_url'))
{
$_SESSION['mio_url']= $_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI'];
}
?>
<a href="<? echo "http://" .$_SESSION['mio_url']; ?>">HOME</a>
----------------------------------------------------------------------------------------------
E' GIUSTO? Oppure ci manca qualcosa? In ogni modo il link HOME
continua a restituirmi l'url della pagina dove si trova. Fammi una
gentilezza scrivimi tutto il codice per favore, grazie
WYLLY

 gentilezza scrivimi tutto il codice per favore, grazie
Quello e` tutto il codice, vedi sopra. :)
Bye.

 Quello e` tutto il codice, vedi sopra. :)
Ho messo tutto all'inizio del codice della pagina e il link HOME dopo
il body ma continua a linkare sempre sulla pagina dove si trova  e mi
restituisce un WARNING: eccolo
Warning: array_key_exists() [function.array-key-exists]: The second
argument should be either an array or an object in /percorso completo
del server/line 9

 wrote:
Ora ho sistemato tutto in cima alla pagina ma mi esce il seguente
warning:


 del server/line 9
Allora prova a cambiarlo con:
<?php
session_start();
if ( ! isset($_SESSION['mio_url'])) {
  $_SESSION['mio_url']= $_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI'];
}
?>
E vedi se va.
Bye.


Ora non da piu' errori ma il link HOME andando su un'altra pagina
continua a visualizzare l'url di quella pagina invece di trascinarsi
dietro l'url iniziale:
Ho fatto cosi
pagina iniziale index.php?index_3301.html
<?php
session_start();
if ( ! isset($_SESSION['mio_url'])) {
  $_SESSION['mio_url']= $_SERVER['SERVER_NAME'].
$_SERVER['REQUEST_URI'];
}
?>
<html>
<body>
<a href="<? echo "http://" .$_SESSION['mio_url']; ?>">HOME</a>
<a href="servizi.php">SERVIZI</a>
</body>
</html>
funziona e HOME mi visualizza index.php?index_3301.html senza errori
ma se provo  a cliccare su SERVIZI che come pagina ha lo stesso codice
di HOME perchè è un template comune a tutti e due, quando vado a
visualizzare cosa linka HOME mi da servizi.php e non si trascina
dietro  invece index.php?index_3301.html che è il valore che dovrebbe
avere... lo so ti sto stressando ma non ho fatto mai una cosa del
genere...capiscimi
WYLLY

Sto impazzendo...

 genere...capiscimi
Nemmeno io ho mai fatto una cosa del genere, non ne ho mai avuto bisogno,
a dire il vero.
E non riesco a capire perche` non funzioni. L'unica cosa che mi viene in
mente e` che tu rifiuti il cookie di sessione e abbia il trans_sid
disabilitato, e che quindi le sessioni non funzionino...
Bye.

 ha scritto nel messaggio 
news:1180610666.4...@k79g2000hse.googlegroups.com...
Salvatore Paci ha scritto:




Aiutami. Grazie
-------------
Spero che l'assegnazione $_SESSION['mio_url']=.... la faccia una sola volta, 
altrimenti...