hallo,
also es gibt verschiedene möglichkeiten dein problem zu lösen.
die erste wäre die funktion array_multisort mit der du die aus der datenbank ausgelesenen werte sortieren könntest, dies ist allerdings etwas komplizierter, da du die zuordung der anderen felder zum passenden datum wiederhersetllen musst.
der einfachste weg wäre der order by befehl schon beim auslesen der datenbank.
dafür eigenet sich am besten ein timestemp, wenn du einen neuen datensatz in der datenbank anlegst und das datum einfügen willst, einfach die php funktion time() benutzen.
hier mal ein beispiel zum geordneten auslesen per order by nach dem feld datum.
Code:
$query = mysql_query("SELECT `$news_head`, `$news_content`, `$news_date`, `$user_id` FROM `$table_news` ORDER BY `$news_date` DESC");
hierbei werden die daten anhand des datums ausgelesen, von alt nach neu.
mit der angabe ASC statt DESC machst du es umgekehrt.