Visualizzazione risultati 1 fino 13 di 13

Discussione: Cancellare cookie

  1. #1
    Guest

    Predefinito

    Ok, rompo sempre... :P

    qualcuno sa come cancellare un cookie preciso (tipo x fare il logout e inserire altri dati)

    e dato ke ci siamo come si fa x far mantenere un cookie (tipo uno viene nel mio sito una volta e mette i dati, la volta dopo viene e nn deve inserire i dati)

    grazie x l'infinita pazienza

    Ciao ciao!

  2. #2
    Guest

    Predefinito

    tutto quello che metti in un cookie ha la sua bella data e ora di scadenza (expiration date)

    non devi fare altro che settare tutto il contenuto del cookie come se fosse già scaduto...

    ...ti faccio un esempio preso dalle mie login logout (funzionanti)

    qui setto tutto il contenuto del cookie quando faccio la login:

    setCookie ($cookieusername,$username, time()+30240000,"/");
    setCookie ($cookiepassword,$password, time()+30240000,"/");
    setCookie ("expiretime",time()+(60*$Cookie_Length),time()+30 240000,"/");


    e qui setto tutto a "scaduto" nella logout:

    setCookie($cookieusername);
    setCookie($cookieusername,'',time()-3600,"/");
    setCookie($cookiepassword);
    setCookie($cookiepassword,'',time()-3600,"/");
    setCookie('expiretime','-1');

    tutto qui
    :D :D :D

  3. #3
    Guest

    Predefinito

    Oppure puoi fare così ^_^

    setcookie(nome_cookie);

    senza altri argomenti..con questa funzione non imposterai il cookie sul valore di una stringa vuota, ma lo eliminerai direttamente.

  4. #4
    Guest

    Predefinito

    Ti ringrazio x la risposta, l'unico problema è ke nn riesco ad applicare quei codici con i miei dati xkè nn riesco a capire quali siano i cookie ke genera...
    se ti faccio vedere il codice riusciresti ad aiutarmi?

    grazie! :D

  5. #5
    Guest

    Predefinito

    si fammi vedere, magari risolviamo il problemino ^_^ ghgh

  6. #6
    Guest

    Predefinito

    define( "TITLE", "Accedi a Mystic Land" ); //Title for the login page.
    define( "EXPIRE", 14400 ); //Seconds until the cookie expires.

    $bg_color = '#000000';
    $text_color = '#00CC33';
    $link_color = 'red';
    $vlink_color = 'darkred';
    $alink_color = 'yellow';


    function DisplayLoginForm ($err_string) {
    require('htmldoc.inc');

    global $THIS_URL;

    global $bg_color;
    global $text_color;
    global $link_color;
    global $vlink_color;
    global $alink_color;

    $html = new htmldoc();
    $html->printheader( $bg_color, $text_color, $link_color, $vlink_color, $alink_color, TITLE );

    ?>

    <CENTER>
    <FORM NAME=login ACTION=<? echo $THIS_URL ?> METHOD=post>
    <TABLE BORDER=0>
    <tr align='center'><FONT face='morpheus' SIZE=3 COLOR="#FF0000"><? echo $err_string ?></FONT></tr>
    <TR>
    <TD><font face='comic sans ms' size='2'>Username --></font></TD>
    <TD><INPUT NAME="username" TYPE="text" SIZE="10"></TD>
    </TR>
    <TR>
    <TD><font face='comic sans ms' size='2'>Password --></font></TD>
    <TD><INPUT NAME="password" TYPE="password" SIZE="10"></TD>
    </TR>
    <tr align='center'><td align='center'><INPUT TYPE="submit" VALUE="Accedi"></td></tr>
    </TABLE>
    </FORM>

    <?
    $html->printfooter();
    exit;

    }

    function GenerateSecret ( $username, $encrypted_password ) {

    $md5str = MD5( TIME() );
    $cookie_val = "$username-$encrypted_password-$md5str";
    setcookie( "php_mini_auth", $cookie_val, time()+EXPIRE);
    $arg = "update acl set string='$md5str' where username='$username'";
    $row = mysql_db_query( DATABASE, $arg );

    }

    function AuthenticateUser ( $username, $password ) {

    global $ip;
    global $host;
    global $referer;

    $arg = "select password, 1 as auth from acl where username='$username' and password=encrypt('$password','$username')";
    $row = mysql_fetch_array(mysql_db_query( DATABASE, $arg ));

    if ($row[auth]) {
    if (defined( "AUTH_LOG" ))
    error_log( date("Ymd H:i:s") . " -- $ip -- Username: '$username' authenticated\n", 3, AUTH_LOG);
    GenerateSecret( $username, $row[password] );
    }
    else {
    if (defined( "AUTH_LOG" ))
    error_log( date("Ymd H:i:s") . " -- $ip -- Username: '$username' authentication failure\n", 3, AUTH_LOG);
    DisplayLoginForm( "Dati incorretti, riprova" );
    }
    }

    function AuthenticateCookie ( $cookie, $username, $password ) {

    $cookie_var = split("-", $cookie);
    $ck_username = $cookie_var[0];
    $ck_password = $cookie_var[1];
    $secret = $cookie_var[2];

    $arg = "select 1 as auth from acl where username='$ck_username' and password='$ck_password' and string='$secret'";
    $row = mysql_fetch_array(mysql_db_query( DATABASE, $arg ));

    if (!($row[auth]))
    AuthenticateUser ( $username, $password );
    else return $ck_username;

    }

    mysql_connect($db_hostname,$db_user,$db_pass) or
    die("Unable to connect to the SQL server...");

    $THIS_URL=getenv("SCRIPT_NAME");
    $ip = getenv("REMOTE_ADDR");
    $host = getenv("REMOTE_HOST");
    $referer = getenv("REMOTE_REFERER");

    if ($php_mini_auth)
    $username = AuthenticateCookie( $php_mini_auth, $username, $password );
    else
    if ($username)
    AuthenticateUser( $username, $password );
    else
    DisplayLoginForm( "Accedi con i tuoi dati" );

    $result = mysql_db_query( DATABASE,"SELECT * from acl WHERE username='$username'");
    $row=mysql_fetch_row($result);

    ?>
    ho tolto la parte iniziale (c'erano i miei dati personali... :P ) cmq questa è la pagina, se ce la fai ad aiutarmi ti ringrazio infinitamente!!! :D

  7. #7
    Guest

    Predefinito

    Vedi questa riga di codice:


    [code:1:b6a4c2c793]setcookie( "php_mini_auth", $cookie_val, time()+EXPIRE);[/code:1:b6a4c2c793]

    il nome assegnato al cookie è php_mini_auth quindi nella pagina di logout

    scrivi setcookie("php_mini_auth");

    Fammi sapere se funziona ^_^[/code]

  8. #8
    Guest

    Predefinito

    FUNZIA!!!! ti ringrazio infinitamente!!!!!

    Dato ke ci sono: sai come togliere i margini di una pagina senza usare i comandi dal body? mi sarebbe molto utile!!!

    grazie ancora!

  9. #9
    Guest

    Predefinito

    Uhm...magari con un po' di css

    [code:1:70b857e7f5]<style type="text/css">

    #div1 {
    margin-top: 0px;
    margin-right: 0px;
    margin-bottom: 0px;
    margin-left: 0px; }

    </style>[/code:1:70b857e7f5]

    Questo va inserito nell'head della pagina

    poi nel corpo della pagina richiami il codice così
    [code:1:70b857e7f5]<div id="div1">
    [/code:1:70b857e7f5]

    fammi sapere ^_^ di css non ne so molto quindi non so se funziona ghgh

  10. #10
    Guest

    Predefinito

    nn riesco a farlo funziare xkè devo metterlo sulla pagina ke ti ho fatto vedere prima e li nn posso mettere ne <html> ne <head> altrimenti va in conflitto con l'altra pagina di quando ti sei "loginato"

    per caso si puo mettere qui:

    $bg_color = '#000000';
    $text_color = '#00CC33';
    $link_color = 'red';
    $vlink_color = 'darkred';
    $alink_color = 'yellow';
    qui

    function DisplayLoginForm ($err_string) {
    require('htmldoc.inc');

    global $THIS_URL;

    global $bg_color;
    global $text_color;
    global $link_color;
    global $vlink_color;
    global $alink_color;
    e qui
    ho notato ke quei comandi sono molto simili a quelli del tag body, forse in qualche maniera si puo (P.S.: ho già provato con topmargin e nn funzia, il comando deve essere diverso...)

    grazie ancora!

  11. #11
    Guest

    Predefinito

    uhm..vedo che c'è un require("htmldoc.inc");

    prova a metterlo nel file htmldoc.inc ^_^

    se si chiama htmldoc avrà i tag <html> <head> ecc suppongo ^_^

    Com'è l'indirizzo del tuo sito? mystico.altervista.org? xchè se clicco sotto la tua firma non funzica ^_^

  12. #12
    Guest

    Predefinito

    hai ragione nel file htmldoc sono settate le variabili ke ti avevo postato prima! cmq il mio sito è http://mystico.altervista.org e i collegamenti nella firma funziano!!!

    adesso provo a cambiarli dopo ti so dire!

  13. #13
    Guest

    Predefinito

    ok, funzia tutto, praticamente htmldoc serve x mattere i tag iniziali e finali in auth.inc

    grazie x tutti gli aiuti che mi hai dato, se ti serve qualcosa dimmelo! :D

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •