2011-09-13 16 views
5

Sto eseguendo il debug di un problema con un sistema Magento.È possibile impostare setcookie in PHP in più intestazioni "Set-Cookie"?

Il problema è un'intestazione Set-Cookie duplicato, in questo modo:

Set-Cookie: flimmit_session=search-0c30086b812519b006aa27ef4f37f15b-24; path=/; domain=.flimmit.com; httponly 
Set-Cookie: flimmit_session=search-0c30086b812519b006aa27ef4f37f15b-24; path=/; domain=.flimmit.com; httponly 

Il cookie viene impostato utilizzando il comando setcookie di php. La mia domanda è se l'uso errato di questa funzione può causare un'intestazione Set-Cookie errata o se devo cercare altrove l'errore ...

+0

Anche se questa funzione viene utilizzata in modo non corretto, un raddoppio di testa biscotto * * non dovrebbe causa alcun problema; il secondo semplicemente sovrascriverà il primo. – deceze

risposta

6

Sì, chiamando lo setcookie() due volte con gli stessi dati si otterrà 2 intestazioni identiche Set-Cookie:. L'ho appena provato, e lo fa.

Non dovrebbe causare un problema, però, il cookie avrà sempre il valore definito dal l'ultima chiamata setcookie() ...

+0

quindi le intestazioni standard http possono essere definite più volte e viene utilizzato il valore lat occouring? –

+3

@Joe Leggi l'ultimo paragrafo di [RFC2616 Sezione 4.2] (http://www.w3.org/Protocols/rfc2616/rfc2616-sec4.html#sec4.2). Non c'è nulla che dice in modo specifico che i valori duplicati verranno sovrascritti dal valore successivo, che è semplicemente il modo in cui i browser lo gestiscono (è stato appena giocato con esso ed è sicuramente come lo gestiscono IE8, FF3, Chrome e Safari). Come regola generale, questo è vero per qualcosa di simile - se si imposta lo stesso parametro GET o POST due volte, il valore successivo verrà utilizzato da PHP e ASP, almeno. – DaveRandom

+0

@DaveRandom Hai provato a eliminare un cookie preesistente e crearlo di nuovo con un nuovo valore, in questo ordine, ma nella stessa risposta? Dico che non esiste un modo sicuro al 100% per definire cosa accadrà. – Ashnur

Problemi correlati