Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 24
  1. #1

    [PHP] Passare una variabile da una funzione ad un altra.

    Ciao a tutti. Sto facendo un sistema molto rudimentale di log in.
    In pratica nella prima pagina devo una funzione "auth_get_status()" che controllando la presenza di un cookie mi dia la variabile $status = "LOGGED". In caso contrario $status = "NOT_LOGGED".
    A questo punto però non so come fare una funzione (il controllo del cookie lo ho già fatto) che visto il cookie o no mi ridia indietro la variabile $status e soprattutto (essendo questa funzione dentro una libreria a parte) come andare a riprenderla.

    Spero di aver reso l'idea...ciao!

  2. #2
    o ritorni il valore di $status con

    return $status;

    e poi prendi il valore con

    $status = auth_get_status();


    o dichiari la variabile $status globale con

    global $status;

    subito all'inizio dello script...

    (non sono sicuro..)

  3. #3
    Ora provo col primo metodo che mi sembra più facile...
    grazie!

  4. #4
    Allroa il metodo funziona...solo che ho un simpatico problema..
    Non riesco a far funzionare i cookie

    Ovvero non capisco come faccio a trovare il cookie.

    ecco il listato della famosa funzione;
    Codice PHP:
    function auth_get_status(){

    if (isset(
    $_COOKIE))

    {  
        
    $status "AUTH_LOGGED"
    } else { 
        
    $status "AUTH_NOT_LOGGED"; }
        return 
    $status;

    Ed ecco il listato della pagina che crea il cookie:
    Codice PHP:
        $time time(); 
        
    $nickname "Paolo"
        
    $pass "Rossi"
        
    $visite 4234
        
    $cookie_string $nickname.'&'.$pass.'&'.$visite;  
        if (
    setcookie("cookie"$cookie_string$time+3600)) {
        echo 
    "cookie impostato"
        }else{
        echo 
    "cookie NON impostato";
        } 
    E fino a qui la funzione mi restituisce $status = AUTH_LOGGED.

    Però provando per curiosità a fare una sorta di codice di log out che mandasse l'expiration date indietro ad una data passata quindi:
    Codice PHP:
    <?php 
    setcookie 
    ("cookie"""time() - 3600);
    ?>
    mi torna cmq il valore AUTH_LOGGED.
    PERCHE???? :master:

  5. #5
    il controllo che fai [if(isset($_COOKIE))] è sbagliato, $_COOKIE c'è, ma non per questo contiene il tuo cookie.
    Codice PHP:
    if(isset($_COOKIE['cookie']) && $_COOKIE['cookie'] != ''){
    ..... 

  6. #6
    Ah ecco, infatti quello che pensavo io era che mi ridava AUTH_LOGGED solo perchè esisteva un qualunque cookie nella cache...giusto?
    Allora: ho provato col codice che mi hai dato e funziona! BElla grazie!

    solo che mi dovresti spiegare a cosa serve questo:

    Codice PHP:
     && $_COOKIE['cookie'] != '' 
    Serve a controllare se il cookie è vuoto?

  7. #7
    Ok ora ho un altro problema: sto creando una funzione che mi vada a leggere i dati dal cookie (d'ora in poi chiamato "genb").
    Come posso fare per prendere quei dati?

  8. #8
    sono superglobali in $_COOKIE['genb'] hai tutto

  9. #9
    mi stai dicendo che facendo

    global $_COOKIE['genb'];

    posso richiamare delle variabili salvate dentro di esso?
    Perchè io il cookie lo creo in questo modo:

    Codice PHP:
    $nickname "Paolo"
    $pass "Rossi"
    $visite 4234
    $cookie_string $nickname.'&'.$pass.'&'.$visite
    setcookie("genb"$cookie_stringtime()+3600); 

  10. #10
    $_COOKIE['bla'] è gia global di suo

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.