Problema con "explode" su campo date

antonioantonio

Nuovo Utente
27 Set 2015
25
0
0
Ciao a tutti,

Mi dareste una mano???

Ho un problema nel visualizzare la data nel formato "italiano" estraendo una tabella dal database e visualizzandola in una pagina.

in pratica estraggo i dati con:
PHP:
$sql = "SELECT * FROM `Iscritti`\n"
    . "ORDER BY `Iscritti`.`id` DESC";
$result = mysql_query($sql);

a questo punto provo a formattare la data nel formato gg/mm/aaaa prima di stampare la tabella sulla pagina con:

PHP:
$dataoraRelativi = mysql_fetch_array($result);
$dataRel = $dataoraRelativi['data'];
$d = explode("-", $dataRel);
$dataRelIta = $d[2]. "/" .$d[1] . "/" .$d[0];

e poi stampo la tabella

PHP:
while($r = mysql_fetch_array($result))
echo "<tr><td>".$r['id']."</td>".
	       "<td>".$dataRelIta."</td>".
	       "<td>".$r['nome']."</td>".
	       "<td>".$r['cognome']."</td>".
	       "<td>".$r['datanascita']."</td>".
	       "<td>".$r['telefono']."</td>".
	       "<td>".$r['email']."</td>
     </tr>";

il problema è che le date mi vengono restituite tutte come 00-00-0000

Dove sbaglio??????
 
non so se c'entra ma se la tua query ha un risultato di più righe la procedura di trasformazione della data la devi mettere all'interno del ciclo while non fuori
 
Ho provato!

ma se eseguo la procedura all'interno del ciclo while.....mi scompare l'intera tabella!!!!1

non capisco.....
 
Si,
se stampo la tabella "normalmente"...
sostituendo quindi
PHP:
"<td>".$dataRelIta."</td>"

con
PHP:
 "<td>".$r['data']."</td>".
tutti i campi vengono correttamente mostrati...il problema è la formattazione...in questo modo viene mostrata la formattazione standard di mysql "Y-m-d"
 
forse, e ribadisco forse, ho capito
dovresti mettere la conversione dopo il while ma racchiudere sia la conversione che echo fra parentesi graffe.
è una spiegazione striminzita lo so ma scrivo dal telefono, se non hai capito più tardi provo a mandarti un po' di codice dal computet
 
Per capire....avrei anche capito
....ma non saprei farlo....
Se potessi post armi il codice....te ne sarei grato
 
allora vediamo un po' se così si mette a funzionare

PHP:
while($r = mysql_fetch_array($result)) {
  $d = explode('-', $r['data']);
  $dt = $d[2]."/".$d[1]."/".$d[0];
  echo "<tr><td>".$r['id']."</td>
           <td>".$dt."</td>
           <td>".$r['nome']."</td>
           <td>".$r['cognome']."</td>
           <td>".$r['datanascita']."</td>
           <td>".$r['telefono']."</td>
           <td>".$r['email']."</td>
           </tr>
  ";
}
 

Discussioni simili