Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Jan 2009
    Messaggi
    777

    [PHP] Chiarimenti sui cookie

    salve a tutti,
    il mio blog gestisce gli articoli i contenuti sono su db mysql.
    questi articoli vengono prelevati sempre nella stessa pagina art.php e gestiti attraverso una paginazione.
    quindi per accedere all'articolo 1 si andrà ad art.php?art=1
    per l'articolo 2 art.php?art=2
    ecc ecc
    nella pagina di gestione degli articoli ho incluso con include la pag che gestisce i commenti agli articoli. qui vi è un form con le varie voci tra cui nome e mail..quando l'utente invia con successo un commento viene settato un cookie che mi memorizza nome e mail in modo tale da permettere all'utente di ritrovarsi nome e mail gia compilati e lui non deve far altro che inserire il commento.

    in questo blog ho anche un guestbook in una pagina diversa dove faccio lo stesso giochetto con il cookie..però anche se lo chiamo con lo stesso nome il percorso è diverso e me lo aggiunge all'elenco dei cookie.
    la conseguenza è che se anche ho settato il cookie agli articoli i campi nome e mail nel guestbook non me li ritrovo compilati...
    c'è un modo per ovviare al problema?

  2. #2
    l'utente ha bisogno di registrarsi al tuo sito?

    se si puoi usare le sessioni.

    Edit:

    ho guardato un secondo i comandi dei cookie e sembra strano...
    http://www.php.net/manual/en/function.setcookie.php

    In teoria devi più che altro controllare se il cookie esiste o meno e farci puoi i tuoi ragionamenti... però se proprio non li vede mi sembra strano tutto ciò

  3. #3
    Utente di HTML.it
    Registrato dal
    Jan 2009
    Messaggi
    777
    i cookie li vede benissimo
    non credevo che mettendo lo stesso nome me ne creasse due anche se hanno percorso differente

  4. #4
    devi studiarti il quarto parametro della funzione setcookie che ti permette di settare la cartella nella quale il cookie è valido:

    settando in questo modo
    Codice PHP:
    setcookie ("miniscript""stringa da salvare"time()+3600"/"); 
    il cookie sarà valido su tutto il dominio.

    Se invece vuoi renderlo valido solo in un ambito più ristretto farai


    Codice PHP:
    setcookie ("miniscript""stringa da salvare"time()+3600"/percorso/del/sito/"); 
    Se non imposti tale parametro il cookie sarà valido solo nell'ambito della directory in cui si trova la pagina che lo ha inviato.

    ad esempio se l'URL della pagina articoli è h ttp://tuosito.it/articoli/pagina.php e il cookie lo invii in questo modo (senza il quarto parametro)
    Codice PHP:
    setcookie ("miniscript""stringa da salvare"time()+3600); 
    questo cookie sarà valido solo nell'ambito della directory /articoli/

    se anche ho settato il cookie agli articoli i campi nome e mail nel guestbook non me li ritrovo compilati...
    c'è un modo per ovviare al problema?
    Il tuo problema è risolvibile quindi impostando il quarto parametro della funzione setcookie in modo che i due cookie abbiano lo stesso ambito di validità.

    Spero di essere stato chiaro.
    http://www.miniscript.it
    Se ti sono stato di aiuto in qualche modo in questo forum iscriviti alla fan page di Miniscript - il mio blog di programmazione web.

  5. #5
    Utente di HTML.it
    Registrato dal
    Jan 2009
    Messaggi
    777
    grazie

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 © 2024 vBulletin Solutions, Inc. All rights reserved.