Visualizzazione risultati 1 fino 9 di 9

Discussione: Output formato data

  1. #1
    Guest

    Predefinito

    Sto incontrando problemi su come variare la visualizzazione del formato data in uscita nella mia pagina... come posso fare ad ottenere uno schema DD/MM/YYYY partendo dal YYYY - MM - DD

    Grazie!!

  2. #2
    Guest

    Predefinito

    se ti interessa solo convertire e non fare controlli, puoi fare in questo modo:

    preg_match("/(.*)-(.*)-(.*)/",$data,$con);
    $nuova_data=$con[3]."/".$con[2]."/".$con[1];

  3. #3
    Guest

    Predefinito

    dove vanno inseriti????

  4. #4
    L'avatar di heracleum
    heracleum non è connesso Utente storico
    Data registrazione
    21-01-2004
    Messaggi
    3,333

    Predefinito

    Citazione Originalmente inviato da HoSDo
    dove vanno inseriti????
    Piccolo consiglio:
    invece di chiedere dove vanno inseriti (cosa che, alla situazione attuale, con le informazioni fornite, solo tu sai) perché piuttosto non scrivi qui un pezzo di codice significativo della tua pagina php, così capiamo da dove prendi il valore data che vuoi formattare in altro modo?
    Avvertimento: richiedere in privato questioni tecniche produrrà inevitabilmente una supercazzola prematurata come risposta. (5 served)

  5. #5
    Guest

    Predefinito

    mmh... dunque per ora il problema non si pone più,,, dato che il php continua a fare quello che vuole lui e non quello che gli specifico io... penso che mi ci vorrà ancora un bel po prima di ritentare a lavorarci... almeno fino a quando non avrà un server locale cu cui lavorare per fare esperimenti.,, grazie a tutti per l'aiuto cmq!!

  6. #6
    Guest

    Predefinito

    Ok, ora sono riuscito a mettere su il php come volevo...

    Questo è il recordset da cui viene fuori la data che mi serve (credo che questo pezzo non serva a niente ma lo pasto ugualmente):

    <?php
    $maxRows_news = 4;
    $pageNum_news = 0;
    if (isset($_GET['pageNum_news'])) {
    $pageNum_news = $_GET['pageNum_news'];
    }
    $startRow_news = $pageNum_news * $maxRows_news;

    mysql_select_db($database_news, $news);
    $query_news = "SELECT `date`, testo, url FROM news ORDER BY id DESC";
    $query_limit_news = sprintf("%s LIMIT %d, %d", $query_news, $startRow_news, $maxRows_news);
    $news = mysql_query($query_limit_news, $news) or die(mysql_error());
    $row_news = mysql_fetch_assoc($news);

    if (isset($_GET['totalRows_news'])) {
    $totalRows_news = $_GET['totalRows_news'];
    } else {
    $all_news = mysql_query($query_news);
    $totalRows_news = mysql_num_rows($all_news);
    }
    $totalPages_news = ceil($totalRows_news/$maxRows_news)-1;
    ?>

    qui invece visualizzo la data in una tabella:

    <td height="15" align="center" valign="middle"><?php echo $row_news['date']; ?></td>

    Quelle due righe che mi avete passato dove le devo inserire allora???

    Grazias!

  7. #7
    L'avatar di heracleum
    heracleum non è connesso Utente storico
    Data registrazione
    21-01-2004
    Messaggi
    3,333

    Predefinito

    Sì infatti il resto del codice non era necessario ma nell'indecisione sempre meglio in più che in meno..
    ecco infatti manca ancora una informazione, riguarda la struttura della tabella, ovvero:
    il campo 'date' che formato mysql ha?
    - DATETIME
    - DATE
    - TIMESTAMP
    - oppure è un semplice INT che contiene un valore UNIX_TIMESTAMP ? ? ?

    (vai nella struttura tabella di phpmyadmin e leggi di che type è)
    Avvertimento: richiedere in privato questioni tecniche produrrà inevitabilmente una supercazzola prematurata come risposta. (5 served)

  8. #8
    Guest

    Predefinito

    Si, non mi serve andare a guardare... è un Date!

  9. #9
    L'avatar di heracleum
    heracleum non è connesso Utente storico
    Data registrazione
    21-01-2004
    Messaggi
    3,333

    Predefinito

    Perfetto, dunque senza che manualmente fai tu "parsing" vari, puoi sfruttare la comodissima funzione strtotime (string to time) ovvero prende come parametro un'espressione stringa (!) secondo alcuni formati previsti (tra cui per fortuna il formato di DATE ovvero "YYYY-MM-DD") e restituisce un int che esprime data-ora ovvero il classico Unix Timestamp.

    Dunque, nella pratica, fai così:

    [code:1:cd97e92596]<?php
    $tstamp = strtotime($row_news['date']);
    $newsdate = date('j/m/Y', $tstamp);
    ?>
    <td height="15" align="center" valign="middle"><?php echo $newsdate ?></td> [/code:1:cd97e92596]

    Come vedi ho usato la riga del tuo codice dove vuoi scrivere la data.

    Questo 'j/m/Y' ti scrive la data in forma europea (1/04/2004) se vuoi qualsiasi altro formato guarda le altre possibilità della funzione date().
    Avvertimento: richiedere in privato questioni tecniche produrrà inevitabilmente una supercazzola prematurata come risposta. (5 served)

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •