PDA

View Full Version : [PHP] Session_Start


Stiwy.NET
24-05-2006, 17:05
Ragazzi chiedo il vostro aiuto
Ho preso in gestione un sito già fatto in php! Su tutte le pagine c'è "Session_Start"... a cosa serve? Io non ho parti private (aree riservate) e non gestisco le statistiche, quindi non so a cosa mi serve.

In più tutti link sono a pagine senza querystring, eppure google mi indicizza le pagine con una querystring dell'ID ("?PHP_Session=fda54545jdshalkr4h453" etc.) e questo mi "sporca" l'indicizzazione su google perchè ho la stessa pagina indicizzata più volte.

Aiuto :help:

Qualcuno mi ha anche detto che potrebbe essere un problema di configurazione del server php.

andbin
24-05-2006, 17:51
Ragazzi chiedo il vostro aiuto
Ho preso in gestione un sito già fatto in php! Su tutte le pagine c'è "Session_Start"... a cosa serve? Io non ho parti private (aree riservate) e non gestisco le statistiche, quindi non so a cosa mi serve.session_start() serve per creare (o riprendere, se era già stata creata) la sessione corrente.
Le sessioni vengono usate per poter mantenere dei dati tra richieste differenti del client.

In più tutti link sono a pagine senza querystring, eppure google mi indicizza le pagine con una querystring dell'ID ("?PHP_Session=fda54545jdshalkr4h453" etc.) e questo mi "sporca" l'indicizzazione su google perchè ho la stessa pagina indicizzata più volte.Certo, perché navigando su pagine differenti, l'identificativo di sessione deve essere passato in qualche modo al php per poter "ripescare" la sessione. Ci sono diversi modi per passare l'ID di sessione. Uno è quello che hai detto (tramite un parametro nel url).
Se non ti piace (e nemmeno a me piace), puoi, se ne hai possibilità, impostare nel php.ini la seguente direttiva:

session.use_cookies = 1

(guarda anche la direttiva session.use_only_cookies).

Stiwy.NET
25-05-2006, 08:45
session_start() serve per creare (o riprendere, se era già stata creata) la sessione corrente.
Le sessioni vengono usate per poter mantenere dei dati tra richieste differenti del client.

Certo, perché navigando su pagine differenti, l'identificativo di sessione deve essere passato in qualche modo al php per poter "ripescare" la sessione. Ci sono diversi modi per passare l'ID di sessione. Uno è quello che hai detto (tramite un parametro nel url).
Se non ti piace (e nemmeno a me piace), puoi, se ne hai possibilità, impostare nel php.ini la seguente direttiva:

session.use_cookies = 1

(guarda anche la direttiva session.use_only_cookies).
Grazie mille :mano:

Ho solo una domanda: come faccio a togliere il passaggio dell'id di sessione dagli url? è una configurazione nel php.ini?
:cincin:

andbin
25-05-2006, 11:29
Ho solo una domanda: come faccio a togliere il passaggio dell'id di sessione dagli url? è una configurazione nel php.ini?Devi impostare almeno 2 direttive nel php.ini in questo modo:

session.use_trans_sid = 0

session.use_cookies = 1

Non so in che "condizione" è il tuo php.ini, ovviamente ;) . Potrebbe essere necessario modificare qualche altra direttiva. Per maggiori informazioni guarda la documentazione sulle sessioni sul manuale online del PHP a questo (http://www.php.net/manual/en/ref.session.php) indirizzo.

Stiwy.NET
25-05-2006, 11:33
Devi impostare almeno 2 direttive nel php.ini in questo modo:

session.use_trans_sid = 0

session.use_cookies = 1

Non so in che "condizione" è il tuo php.ini, ovviamente ;) . Potrebbe essere necessario modificare qualche altra direttiva. Per maggiori informazioni guarda la documentazione sulle sessioni sul manuale online del PHP a questo (http://www.php.net/manual/en/ref.session.php) indirizzo.
tnx :ave: