Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12
  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2004
    Messaggi
    120

    problema con cancellazione dati

    ciao a tutti..

    in una pagina ho un form con 3 select (giorno, mese, anno) che mi creano la data che utilizzerò per cancellare i dati dal db...

    mi spiego meglio.. dal form mi ritornano 3 variabili giorno mese e anno..
    li converto in timestamp in questo modo
    Codice PHP:
    $tstamp mktime("0""0""0", (int)$_POST['mese'], (int)$_POST['giorno'], (int)$_POST['anno']); 
    poi per cancellare i dati dal db faccio una cosa del genere
    Codice PHP:
    $query "DELETE FROM $tabella WHERE last_download < '$tstamp'"
    però a quanto pare non funziona e non mi segnala nessun errore
    con le ultime versioni di mysql il timestamp viene gia convertito dentro il db.. forse è per quello che da problemi?

  2. #2
    Utente di HTML.it
    Registrato dal
    Sep 2004
    Messaggi
    120
    up

  3. #3
    ma last_download che tipo di campo e'?
    http://www.mcganass.com

  4. #4
    Utente di HTML.it
    Registrato dal
    Sep 2004
    Messaggi
    120
    timestamp ovviamente

  5. #5
    Utente di HTML.it
    Registrato dal
    Sep 2004
    Messaggi
    120
    up

  6. #6
    Utente di HTML.it
    Registrato dal
    Sep 2004
    Messaggi
    120
    up

  7. #7
    Originariamente inviato da Rank-1
    timestamp ovviamente
    non hai risposto in modo adeguato.

    UNIX TIMESTAMP oppure TIMESTAMP di MySQL?

    quello che tu ricavi con mktime() e' un UNIX TIMESTAMP, ma cosa c'e' nel db?

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  8. #8
    Utente di HTML.it
    Registrato dal
    Sep 2004
    Messaggi
    120
    il campo last_download è TIMESTAMP di MySQL

    quindi se con la funzione mktime ricavo un UNIX TIMESTAMP come si fa a ricavare il TIMESTAMP di mysql?

    comunque nella tabella registro tutti i download effettuati dagli utenti..
    una cosa del genere

    | nickname | nome_file | last_download | ecc.


    quindi dal form mi ritornano 3 variabili (giorno, mese, anno) che devo convertire in TIMESTAMP in modo da poterle confrontare con last_download presente nel mysql... se la data scelta nel form è maggiore alla data presente nel campo last_download il dato viene cancellato...

  9. #9
    siamo in loop...

    posta gli esempi de formati delle varie date e la struttura della colonna. Tu sai cosa vuoi dire, io no.

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  10. #10
    Utente di HTML.it
    Registrato dal
    Sep 2004
    Messaggi
    120
    la tabella:
    Codice PHP:
          $query "CREATE TABLE $infodown (
                    `id` TINYINT UNSIGNED NOT NULL AUTO_INCREMENT, 
                    `script` VARCHAR(15) NOT NULL,
                    `nickname` VARCHAR(30) NOT NULL,
                    `file_name` VARCHAR(30) NOT NULL,
                    `ip_address` VARCHAR(15),
                    `last_download` TIMESTAMP,
                     PRIMARY KEY (id))"


    la pagina in questione:
    Codice PHP:
    if ( $_POST['forum'] == "inviato" )
    {

          $tstamp = mktime("0", "0", "0", (int)$_POST['mese'], (int)$_POST['giorno'], (int)$_POST['anno']);

          $query = "DELETE FROM $infodown WHERE last_download < '$tstamp'";
          mysql_query($query,$connect) or die ("Error: " .mysql_error());

     //etc...

    } else {

              echo "<form method=\"post\" action=\"$PHP_SELF\">"; ?>
              Cancella tutti i dati inferiori alla data:

              <select name="giorno"> <? for ($i=1$i<=31$i++) { echo "<option value=$i>$i"; } ?>
              </select>
              <select name="mese">
              <option value=1>Gennaio
              <option value=2>Febbraio
              <option value=3>Marzo
              <option value=4>Aprile
              <option value=5>Maggio
              <option value=6>Giugno
              <option value=7>Luglio
              <option value=8>Agosto
              <option value=9>Settembre
              <option value=10>Ottobre
              <option value=11>Novembre
              <option value=12>Dicembre
              </select>
              <select name="anno">
              <option value=2006>2006
              <option value=2007>2007
              <option value=2008>2008
              <option value=2009>2009
              <option value=2010>2010
              </select><input type="submit" value="Cancella">
              <input type="hidden" name="form" value="inviato"></form>

     //etc...

    }

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.