Salve, ho un problema con l'ordinamento di un array. In pratica io tramite due query estraggo dati da un database mysql da due tabelle diverse, poi unisco i risultati in un unico array tamite il metodo array_merge. Il tutto funziona correttamente, tranne per un problema di ordinamento, in pratica nelle due tabelle è presente un campo data dove viene inserita la data in questo formato 2015-05-25, io vorrei che i dati estratti siano visualizzato in modo discendete, ma ciò non accade. Ecco il codice che utilizzo:
Ho letto in giro che bisogna utilizzare la funzione usort, ma non ho capito come e possibile applicarla al mio problema.Codice PHP:
<?php $sql = "SELECT * FROM tabella1 WHERE data between '$primo_parametro' and '$secondo_parametro' and id_utente = '$ute'"; $res = mysql_query($sql);
$data = array();
while ($rows = mysql_fetch_array($res, MYSQL_ASSOC)) { $data[] = $rows; } /* Query Quando selezioni due date */
$sql2 = "SELECT * FROM tabella2 WHERE data_ass between '$primo_parametro' and '$secondo_parametro' and id_utente = '$ute'"; $res2 = mysql_query($sql2);
$data2 = array();
while ($rows2 = mysql_fetch_array($res2, MYSQL_ASSOC)) { $data2[] = $rows2; }
//echo json_encode($data,$data2); //echo json_encode($data2);
$combinedData = array_merge($data,$data2);
function cmp($a, $b) { return $b['data'] - $a['data_ass']; }
usort($combinedData, "cmp");
$json = json_encode($combinedData); echo $json;
?>
Potete darmi una mano?