Visualizzazione dei risultati da 1 a 6 su 6

Discussione: [PHP] Doppio POST

  1. #1
    Utente di HTML.it L'avatar di Fractals87
    Registrato dal
    Apr 2008
    Messaggi
    1,202

    [PHP] Doppio POST

    Ciao a tutti,

    Ho il seguente problema e vorrei capire qual'è la strada migliore da percorrere.

    Lavoro con una applicazione web che viene gestita da portatili la sim.
    Mi è parso di intuire che a volte capita, in caso di segnale molto scarso, un invio di doppio post facendo il submit della form due volte.
    Probabilmente al click della form la richiesta viene inviata al server e immediatamente processata, ma nel caso in cui non c'è una immediata risposta al browser questo rimanga in caricamento in attesa e nel caso in cui l'utente clicca nuovamente il sumbit si verifica il problema.
    Come posso ovviare a questa cosa?

    Ciao e grazie
    Che mestiere difficile.....essere da soli ancora di più

  2. #2
    la via più veloce è disattivare tramite js il tasto submit dopo che è stato premuto...

    la via più contorta è salvare in db un serializzato del post con il relativo timestamp e ignorare le richieste con timestamp vicini o uguali e il serializzato del post identico (ed eventualmente anche lo stesso ip / user agent)
    « Se nella prima mezz'ora non capisci chi è il pollo, allora il pollo sei tu. » [Thomas "Amarillo Slim" Preston, campione del mondo di poker]

  3. #3
    Utente di HTML.it L'avatar di Fractals87
    Registrato dal
    Apr 2008
    Messaggi
    1,202
    azz che lavoraccio.... preferivo che mi dessi una coltellata..... optero per la soluzione A

    Grazie mille
    Che mestiere difficile.....essere da soli ancora di più

  4. #4
    potresti utilizzare il metodo che utilizza questo forum. Un utente dopo aver postato una risposta non può ri-postarne un'altra se non dopo 20 secondi dalla prima. Il funzionamento non è difficile e sarebbe l'opzione B di [king size slim]. Dovresti creare un nuovo campo con il timestamp e se il secondo timestamp è inferiore al primo +20 non esegui la query di inserimento.

  5. #5
    Utente di HTML.it L'avatar di Fractals87
    Registrato dal
    Apr 2008
    Messaggi
    1,202
    mmmm e questo time stamp lo andrei a memorizzare su rk utente suppongo...
    a questo punto dovrei andare a memorizzare anche il nome della form da cui parte il submit in modo tale che se utente e form corrispondono vado a fare il controllo sul timestamp...
    Ottimo suggerimento anche questo
    Grazie mille
    Che mestiere difficile.....essere da soli ancora di più

  6. #6
    perchè il nome del form? non serve.
    Quando l'utente invia il messaggio ovviamente prende il timestamp.
    Quindi nella pagina registra_commento.php ci sarà una query che fa il controllo:
    - se il timestamp attuale è inferiore al timestamp(precedente)+20 non farai l'inserimento nel database.
    Il nome del form qualunque esso sia va bene lo stesso.

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.