Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2010
    Messaggi
    227

    Bloccare form tot tempo

    Ciao a tutti!
    Ho creato un database con gli utenti registrati al sito e una pagina dove l'utente loggato può modificare un dato relativo al suo account (es. nome/cognome).
    E' possibile bloccare questo form?

    Praticamente, se l'utente modifica i propri dati, non può rifarlo entro 24 ore: deve aspettare il giorno seguente e, fino ad allora, al posto del form appare un messaggio d'errore. E' possibile fare ciò?
    Questo è il contenuto della pagina:

    Codice PHP:
    <?php

    if ($session == true)

          if (isset(
    $_POST["morecredits"])) {
              
    $morecrediti trim($_POST["morecredits"]);
        
    $morecrediti2 "$crediti"+1;
              
              echo 
    "
    "

              if (
    $morecrediti != "") {
                  if (
    strlen($morecrediti) > 0) {
                      
    $r mysql_query("SELECT * FROM `members` WHERE (id = '$userid')");
                      
    $n mysql_num_rows($r);
                       
                      if (
    $n) {
                         if (
    mysql_query("UPDATE `members` SET crediti = '$morecrediti2' WHERE id = '$userid'"))
                         {
                             echo 
    "<span style=\"success\">I dati sono stati modificati con successo!</span>";
                         } 
                         else
                             echo 
    "<div style=\"error\">Errore</div>";                  
     
                      }
                      else
                         echo 
    "<div style=\"alert\">Errore</div>";
                  }
                  else
                      echo 
    "<div style=\"alert\">errore</div>";
              }
              else
                  echo 
    "<div style=\"error\">CAMPO VUOTO!</div>";
          }      
     
         
          echo 
    "
    "
    ;

          echo 
    "
    <form method=POST action='nomepagina.php' name='myForm'>
    <input type=\"text\" name=\"morecredits\" value=\"
    $crediti\">
    </form>


    <button onclick='myForm.submit();'>Ricevi!</button>"
    ;

       } 


    else
      echo 
    "Devi essere loggato per visualizzare questa pagina.";


    ?>
    Grazie in anticipo a tutti!

    Thinker

  2. #2
    Utente di HTML.it L'avatar di bstefano79
    Registrato dal
    Feb 2004
    Messaggi
    2,520
    lo puoi fare aggiungendo al db degli utenti un campo date dove metti la data dell'ultima modifica effettuata

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2010
    Messaggi
    227
    Avevo pensato di farlo, magari gestendo il tutto con un IF ma.. non saprei come scriverlo ^^"
    Pensavo a una cosa del tipo..

    Codice PHP:
    $datadioggi = (date("d-m-y"));
    if (
    $ultimamodifica $datadioggi) {
    echo
    "Aspetta domani";
    }

    else { 
    //Il codice scritto prima } 
    Ma non mi convince moltissimo, non so perchè.. ci sono alternative in caso? Altrimenti faccio così ^^

    Thinker

  4. #4
    Utente di HTML.it L'avatar di bstefano79
    Registrato dal
    Feb 2004
    Messaggi
    2,520
    io fare esattamente così invece ^_^

  5. #5
    Utente di HTML.it
    Registrato dal
    Jun 2010
    Messaggi
    227
    Ah ok xD Grazie, domanda inutile^^

    Ciaooo!

    Thinker

  6. #6
    Puoi anche far fare il controllo dal server mysql, inserendolo nella query, così risparmi un po' di codice php ed un po' di banda...

    Mysql prevede varie funzioni di confronto delle date, altrettanto valide di quelle di php e già strutturate per lavorare sui dati del db.

    Io farei così, a meno che il tuo script non legga in ogni caso il record dell'utente, e quindi la variabile $ultimamodifica non fosse già disponibile senza bisogno di accedere nuovamente al db.
    Tecnolgie per l'arte.
    Arti per la tecnologia.
    softhare

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.