problema mostrare data di registrazione formattata in italiano

mickey123

Utente Attivo
17 Gen 2015
59
0
6
ciao ragazzi,

io vorrei mostrare la data di registrazione dell'utente che si è loggato, nella home di un forum, formattata però in italiano, come faccio? Io sto provando, e ho fatto così, ma non viene:

PHP:
$date = $_SESSION['regdata'];  //recupero la data di registrazione tramite la sessione, dalla login.php

echo date('d m Y', $date); ?>

e mi restituisce questo errore:


Registrato dal:

Notice: A non well formed numeric value encountered in C:\xxxxxxxxxxxxxxxxxxxxx\userarea.php on line 39
01 01 1970


non riesco a capire, cos'è che non faccio?
 
Ultima modifica di un moderatore:
si è vero, nel frattempo ho trovato questa, dove c'è la stringa che definisce il formato della data in input:

$date = DateTime::createFromFormat('Y-m-d', $_SESSION['regdata']);
echo $date->format('d-m-Y');

ma mi restituisce questo errore:

Registrato dal:
Fatal error: Call to a member function format() on a non-object in C:\xxxxxxxxxxxxxxxxxxxxxx\userarea.php on line 41

cosa può essere? grazie mille :)
 
sul manuale php.net dice che il secondo parametro dev'essere una stringa, e ho provato a delimitare sia con i doppi apici che con i singoli $_SESSION['regdata'] ma mi viene restituito lo stesso un errore...

si è vero, nel frattempo ho trovato questa, dove c'è la stringa che definisce il formato della data in input:

$date = DateTime::createFromFormat('Y-m-d', $_SESSION['regdata']);
echo $date->format('d-m-Y');

ma mi restituisce questo errore:

Registrato dal:
Fatal error: Call to a member function format() on a non-object in C:\xxxxxxxxxxxxxxxxxxxxxx\userarea.php on line 41

cosa può essere? grazie mille :)
 
ciao
stampa il valore della sessione
PHP:
<?php
$date = $_SESSION['regdata'];  //recupero la data di registrazione tramite la sessione, dalla login.php
var_dump($_SESSION['regdata']);//e posta cosa risulta
//echo date('d m Y', $date);
?>
$_SESSION['regdata'] puo essere espressa in timestamp (ma non mi sembra perche se così fosse non ti avrebbe dato errore)
oppure nel formato YY-mm-dd allora bisogna invertirla
oppure.... in uno degli altri formati
in funzione di come è la formattazione iniziale si deve fare in un modo o in un altro
 
mi stampa questo:

Registrato dal: string(19) "2014-06-04 13:34:50"

ma il problema è il formato..perchè il recupero dal db funziona..bisogna capire come inserire la $_SESSION nella funzione sopracitata..

comunque adesso do un'occhiata al manuale :) grazie mille

ciao
stampa il valore della sessione
PHP:
<?php
$date = $_SESSION['regdata'];  //recupero la data di registrazione tramite la sessione, dalla login.php
var_dump($_SESSION['regdata']);//e posta cosa risulta
//echo date('d m Y', $date);
?>
$_SESSION['regdata'] puo essere espressa in timestamp (ma non mi sembra perche se così fosse non ti avrebbe dato errore)
oppure nel formato YY-mm-dd allora bisogna invertirla
oppure.... in uno degli altri formati
in funzione di come è la formattazione iniziale si deve fare in un modo o in un altro
 
Ciao, fai prima a cambiare la query che ti restituisce la data, sempre che sia in formato DATETIME o TIMESTAMP
Codice:
SELECT DATE_FORMAT(campodata,'%d/%m/%Y %H:%i:%s') as data FROM tabella
 
Ultima modifica:
eh ma volevo arrivarci sopra all'altra soluzione! ;) comunque ho trovato un tutorial in giro, che spero possa aiutare anche gli altri così come ha aiutato me:

http://www.italianwebdesign.it/formattare-le-date-con-database-mysql-e-php/

grazie mille anche x il tuo aiuto! ciao

Ciao, fai prima a cambiare la query che ti restituisce la data, sempre che sia in formato DATETIME o TIMESTAMP
Codice:
SELECT DATE_FORMAT(campodata,'%d/%m/%Y %H:%i:%s') as data FROM tabella
 

Discussioni simili