Pagina 2 di 2 primaprima 1 2
Visualizzazione dei risultati da 11 a 13 su 13

Discussione: evitare doppio click

  1. #11
    Utente di HTML.it
    Registrato dal
    Jan 2001
    Messaggi
    1,742
    purtroppo non ti so aiutare..
    però ormai il codice java c'è dovunque almeno uno su pagina...

    non penso che perderai tantissimi utenti se usi quel pò di java.. qualora non avessero java attivabile crei una pagina del modulo senza java è la indichi...

  2. #12
    mmm....

    adesso come adesso nn mi ricordo la variabile server che contiene l'indirizzo IP... comunque quello è il problema minore (lancia phpInfo() e la trovi).

    -- script: submit.php --

    codice:
    session_start(); // Dico allo script ke utilizzo la sessione.
    
    $ip = "IP UTENTE, lo ricavi!";
    $ts = time();  // Time stamp dello script
    $sec = 10; // Secondi minimi tra un submit e l'altro
    
    if ( @$_SESSION['CHECK']-$ts < ( $sec ) ) {
    die("Hai già premuto.... imbecille succube del doppio click!");
    } else {
    $_SESSION['CHECK'] = $ts;
    ... continua il tuo script!
    }
    Così blocchi un click successivo... Il problema è che quando il secondo click viene fatto è possibile ke il browser interrompa la richiesta precedente (so ke è possibile ma nn mi ricordo come!). Quindi magari qualche script funziona ametà o roba del genere.

    La soluzione javascript secondo me è la migliore. Semplice ed efficace. Di sicuro funziona con tutti i browser x pc (ok, è un'utopia ke ci siano in giro persone ke nn supportano JS!!! C'è dappertutto!). Magari con i browser x cellulari o palmari lo script nn ti funziona...

    Mah!

    Ciao!
    By Pegoraro Marco
    http://adessoweb.biz- AdessoWEB - Siti web professionali a prezzo accessibile!
    http://consulenza-web.com- Il mio blog!

  3. #13
    Utente di HTML.it L'avatar di Emyl
    Registrato dal
    Jul 2004
    Messaggi
    250
    Rieccomi...

    ...allora intanto la variabile che contiene l'Ip del visitatore e' $REMOTE_ADDR

    Dunque per capirsi questo e' uno script simile che io ho applicato ad una form che registra i dati in una tabella MySql.

    codice:
    $qcip = "SELECT d FROM tabella WHERE ip = '{$REMOTE_ADDR}' AND (".time()." - timestamp) < 10";
    $cip = mysql_query($qcip) or die(mysql_error());
    $rcip = mysql_fetch_row($cip);
    if($rcip[0] != 0) is_an_error('P1');
    Spiego: timestamp e' un campo della tabella dove viene registrata la data di inserimento (in formato timestamp appunto). Se l'intervallo di inserimento e' inferiore ai 10 secondi (in questo caso) viene chiamata la funzione is_an_error (che ho creato io) dove si puo' fare quello che si vuole, la cosa piu' ovvia credo che sia evitare un nuovo inserimento in db.

    Il mio script non prevede di bloccare l'esecuzione del codice come qualcuno ha suggerito, piuttosto filtra solo l'inserimento dei dati. Sinceramente credo che sia un po' compresso evitare i problemi di tracking senza javascript (Ho sentito dire JAVA, guardate che non e' la stessa cosa!! VVoVe: VVoVe: VVoVe: )


    Se avete bisogno di altri chiarimenti sono qua

    Ciao ciao
    "Ci sono 10 tipi di persone, quelli che capiscono i numeri binari...
    e quelli che non li capiscono."

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