• Bannato Super User

    problema formato data, come convertirlo?

    Ciao a tutti

    in uno script php che uso trovo la seguente riga

    <td>". $registro["lastlogdate"] ."</td>

    Questa riga mi estrae dal mysql il timestamp (in formato INT)

    ora vorrei visuallizzare questo dato in formato data italiana

    giorno - mesi - anno

    Come posso trasformarlo?

    Non riesco in nessun modo ad interagire ocn la stringa sopra, mi da solo errori, vorrei saper eun modo semplice per far si che vedro la data in formato italiano e non timestamp.

    la funzione completa è la seguente

    <?

    $tabla = mysql_query("SELECT * FROM tb_users WHERE user_status='admin' ORDER BY id ASC");

    while ($registro = mysql_fetch_array($tabla)) {

    echo "
    <tr>
    <td>". $registro["id"] ."</td>
    <td>". $registro["username"] ."</td>
    <td>". $registro["password"] ."</td>
    <td>". $registro["ip"] ."</td>
    <td>". $registro["email"] ."</td>
    <td>". $registro["pemail"] ."</td>
    <td>". $registro["referer"] ."</td>
    <td>". $registro["referals"] ."</td>
    <td>". $registro["visits"] ."</td>
    <td>". $registro["money"] ."</td>
    <td>". $registro["country"] ."</td>
    <td>". $registro["lastlogdate"] ."</td>
    <td>";
    ?>

    Spero possiate aiutarmi, grazie mille

    un saluto


  • User Attivo

    Io per fare una cosa del genere ho usato la funzione "substr" per scomporre la stringa della data nelle parti che mi interessaravano e poi ricostruirla come volevo, sono alle primissime armi con il php e non so se è una soluzione consona, però ha funzionato 😄


  • User

  • User Attivo

    In che formato ti da la data php?


  • Bannato Super User

    La data che mi appare è il formato timespam a me serve convertila solo visivamente in giorno mese a anno, come posso fare?

    non so modificare quel stringa di codice


  • Consiglio Direttivo

    Come ha detto EaMania devi usare la funzione date() di PHP 😉


  • Bannato Super User

    Non avete capito il problema ve lo ripropongo in maniera piu chiara

    lo script in oggetto (non scritto da me) crea una pagina con tutti gli uetnti estratti dal mysql

    per estrazione usa questa funzione automatica

    echo "
    <tr>
    <td>". $registro["id"] ."</td>
    <td>". $registro["username"] ."</td>
    <td>". $registro["password"] ."</td>
    <td>". $registro["ip"] ."</td>
    <td>". $registro["email"] ."</td>
    <td>". $registro["pemail"] ."</td>
    <td>". $registro["referer"] ."</td>
    <td>". $registro["referals"] ."</td>
    <td>". $registro["visits"] ."</td>
    <td>". $registro["money"] ."</td>
    <td>". $registro["country"] ."</td>
    <td>". $registro["lastlogdate"] ."</td>
    <td>";
    ?>

    Io vorrei vedere questo -> <td>". $registro["lastlogdate"] ."</td> NON IN TIMESTAMP come adesso ma in formato data.

    come posso cambiare questo -> <td>". $registro["lastlogdate"] ."</td> DA TIMESTAMP a data normale (a video mi interessa, non modificalo nel mysql, nel mysql deve restare timestamp ma a video vorrei vederlo in data normale)

    queste funzioni estraggono da mysql e creano una lunga tabella in php con tutti gli utenti, paese di registrazione e info varie compreso ultima data del login che vorrei vedere in normale data non in timestamp.

    avete qualche idea per modificare questa stringa e aggiungere qualcosa che me la faccio vedere in formato data normale?

    <td>". $registro["lastlogdate"] ."</td>

    Grazie mille se cisono domande postate pure

    [lastlogdate] è il nome del campo da cui estrae il timestamp dell'ultimo login memorizzato in mysql.


  • Consiglio Direttivo

    Come già detto basta usare la funzione date() :
    [PHP] <td>". date("d-m-Y",$registro['lastlogdate']) ."</td>[/PHP]
    :ciauz:


  • Bannato Super User

    Grazie samy

    perfettamente funzionanete il tuo esempio

    problema risolto, grazie mille

    a presto