Visualizzazione dei risultati da 1 a 10 su 10
  1. #1

    Creare cookie a metà documento

    Salve a tutti...
    Ho la necessità di creare un cookie a metà pagina...
    So bene che vanno inviati nell'header, ma non so come fare altrimenti....

    Vi spiego il mio problema così magari mi dite che ci sono altri modi:
    ho una pagina "profilo.php" trutturata così:

    Codice PHP:
    <html>
    .
    .
    codice
    .
    .
    <body>
    .
    .
    <? include("pagina1.php"?>
    .
    .
    </body>
    </html>
    E pagina1.php è strutturata così:
    Codice PHP:
    <?
    .
    .
    if( 
    cookie_presente() ){
       
    leggi_cookie();
    }else{
       
    crea_cookie();
    }
    .
    .
    .
    ?>
    Il cookie mi serve per l'ordinamento di una lista. Per fare in modo che un utente scelga per che campo ordinare una lista e quindi alle successive visite ricordarlo...

    Qualcuno mi sa dare una soluzione? Se non sono stato chiaro nell'esposizione ditemi che cerco di chiarirmi...

    Grazie infinite!!!

  2. #2
    perchè devi mettere quella chiamata a metà? Non potresti metterla all'inizio?
    Se per esempio la chiamata la mettessi all'inizio non ci sarebbe problema. Se qualche dato che imposti nei cookie deve essere calcolato, la potresti mettere in un file esterno che richiami all'inizio.
    LittleChe

  3. #3
    In effetti ho sbagliato a scrivere il codice di pagina1.php...
    La if è la prima istruzione della pagina, ma il problema è che è già inclusa oltre lo header della pagina profilo.php... e non posso farlo nella pagina profilo...

  4. #4
    esiste una funzione che si chiama require_once che permette di fare l'include del file solo nel caso in cui non sia già stato incluso in precedenza
    LittleChe

  5. #5
    Forse ho trovato il modo per fare tutto all'inizio della pagina profilo.php

    Se ho problemi mi faccio risentire... grazie a tutti!

  6. #6
    Utente di HTML.it L'avatar di JoeP
    Registrato dal
    May 2004
    Messaggi
    558
    Metti ob_start(); all'inizio della pagina e potrai inviare headers in qualsiasi punto della pagina (sessioni, cookie, redirect, etc). Per dettagli:
    http://php.net/manual/en/function.ob-start.php

  7. #7
    Ho dato un occhio, ma il mio inglese non è sufficentemente arguto...
    Come dovrebbe funzionare?
    Lo metto all'inizio, nell'header, e poi creo una funzione che mi crra il cookie che mi serve e la posso richiamare ovunque nel body?

  8. #8
    Originariamente inviato da JoeP
    Metti ob_start(); all'inizio della pagina e potrai inviare headers in qualsiasi punto della pagina (sessioni, cookie, redirect, etc). Per dettagli:
    http://php.net/manual/en/function.ob-start.php
    L'utilizzo ob_start() - ob_end_flush(); in questo modo non mi è mai piaciuto...
    tali funzioni fra le altre cose possono generale incasinamenti in caso di codifica dell'output i UFT8 generando un warning

  9. #9
    Utente di HTML.it L'avatar di JoeP
    Registrato dal
    May 2004
    Messaggi
    558
    Originariamente inviato da oly1982
    L'utilizzo ob_start() - ob_end_flush(); in questo modo non mi è mai piaciuto...
    tali funzioni fra le altre cose possono generale incasinamenti in caso di codifica dell'output i UFT8 generando un warning
    Perchè? E' così comodo e funziona. Non mi ha mai dato problemi (e programmo UTF multilingua da sempre).

  10. #10
    Utente di HTML.it L'avatar di JoeP
    Registrato dal
    May 2004
    Messaggi
    558
    Originariamente inviato da riccardotresold
    Ho dato un occhio, ma il mio inglese non è sufficentemente arguto...
    Come dovrebbe funzionare?
    Lo metto all'inizio, nell'header, e poi creo una funzione che mi crra il cookie che mi serve e la posso richiamare ovunque nel body?
    Mettila prima di qualsiasi altra istruzione nella pagina. Fatto ciò, puoi usare le funzioni per i cookie in qualsiasi punto della pagina senza problemi.

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.