Ciao a tutti, sto cercando di cambiare il formato delle date in un campo di una tabella,
dall'originario UNIXTIMESTAMP al nuovo ANNO+MM+GG+HH+MM+SS ma c'e' qualcosa che non va.
La query che ho scritto è la seguente:
$query="UPDATE news SET datanew=from_unixtime(datalist)";
news è il nome della tabella, datanew il campo di destinazione del nuovo formato della data, e datalist è appunto il campo dove ci sono le date in unixtimestamp che voglio convertire.
Lasciata cosi' la stringa mi trasferisce in datanew solo l'anno e niente più.
Ho provato allora a fare cosi':
$query="UPDATE news SET datanew = from_unixtime(data,'%d%m%Y)";
e funge -memorizzando ANNOMESEGIORNO correttamente- ma solo se come ho riportato sopra tolgo gli spazi vuoti tra giorno, mese e anno.
Il vero problema è pero' l'orario, se faccio:
$query="UPDATE news SET datanew = from_unixtime(data,'%d%m%Y %h:%i:%s')";
non mi vede h,i e s.
Ho provato a unirli tutti cosi':
$query="UPDATE news SET datanew = from_unixtime(data,'%d%m%Y%h%i%s')";
il numero finale dovrebbe essere di 14 cifre giusto?
ANNO+MM+GG+HH+MM+SS
ma è come se i valori si sballassero ed infatti nel campo viene memorizzato un numerone di 10 cifre che per di più è SEMPRE UGUALE per tutte le voci del campo, a prescindere dalla data originaria!
Per cortesia ditemi dove sbaglio... maledizione a questo unixtimestamp e al giorno in cui l'ho scelto!
Grazie a chiunque mi aiuta.
ciao.