Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    Script per recuperare Data dal Database

    Salve, per sapere la data di creazione di un elemento inserito nel Database ( Testi e quant'altro ) ho stilato questo Script, ma non saprei se è giusto o meno. Purtroppo non posso testarlo. Dreamweaver non mi segnala errori, perciò dovrebbe essere corretto.

    Codice PHP:
    $TestiSito = @mysql_query("SELECT * FROM Testi "); while($row mysql_fetch_array($Testi)) { $ID $row['id']; $Nome $row['nome']; $Data $row['Data']; $Data date("j.n.Y"); echo "Il testo".$Nome." è stato creato il".$Data; } 
    In questo modo io saprei la data di creazione, e se io volessi sapere la data dell'ultima modifica? Nel Database ho creato in ogni tabella un campo Data di tipo TimeStamp. Grazie in anticipo.

    Cordiali saluti

  2. #2
    Utente di HTML.it L'avatar di boots
    Registrato dal
    Oct 2012
    Messaggi
    1,626
    Direi di no

    $Data = date("j.n.Y");

    Ti prende la data corrente e non quella di creazione.

    Per fare quello che dici tu, dovresti crearti due campi nella tabella :
    - created
    - modified

    Quando fai l'inserimento nel db (la INSERT), metti in questi due campi la data attuale.
    Quando fai delle modifiche (la UPDATE) aggiorni solo modified con la data attuale.

    In questo modo su created hai la data di creazione e in modified quella dell'ultima modifica

  3. #3
    Molte grazie Boots. Per capire meglio, potresti postarmi le due Query di esempio ( Creazione e modifica ) con relativa risposta ( testo creato il X ) ? Grazie. Saluti

  4. #4
    Utente di HTML.it L'avatar di boots
    Registrato dal
    Oct 2012
    Messaggi
    1,626
    Per prima cosa aggiungi alla tabella i due campi (vedi tu se usate il tipo datetime o timestamp).

    creazione del record:
    Codice PHP:
    $now date('Y-m-d'); // se usi datetime, controlla il formato usato dal db. Di solito è Anno-Mese-giorno
    // se usi timestamp $now = time();
    $query mysql_query("INSERT INTO testi(... , 'modified', 'created') VALUES (..., '$now', '$now')"); 
    modifica record
    Codice PHP:
    $now date('Y-m-d');
    $query mysql_query("UPDATE test SET ... , created = '$now' WHERE id=$id "); 
    I ... sta per tutti i campi che devi salvare

    Stampa dei dati del record
    Codice PHP:
    $TestiSito = @mysql_query("SELECT * FROM Testi ");
    while(
    $row mysql_fetch_assoc($TestiSito)){
        echo 
    "Testo {$row['nome']} creato il "date('d m Y'strtotime($row['created']));
        echo 
    '.Ultima modifica il 'date('d m Y'strtotime($row['modified'])).'
    '
    ;


  5. #5
    Utente di HTML.it L'avatar di boots
    Registrato dal
    Oct 2012
    Messaggi
    1,626
    Mi sono accorto solo adesso di aver fatto un errore nella update...chiaramente il campo da aggiornare non è created, ma modified

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