This is easy enough, but without information on your database layout, it's a guess in the dark.
To display a certain field of a database, you just need an SQL query like this:
$sql = "SELECT `field` FROM `table`";
If you wanted to sort it by date, assuming the column for storing the date is called something like 'timestamp', you would just use the ORDER BY parameter:
$sql = "SELECT `field` FROM `table` ORDER BY `timestamp` DESC";
That would sort it descending (DESC), as opposed to ascending (ASC). This generally means the newest one will be shown first, and the oldest one last.
As for your last question, grabbing events within the next two weeks, it's just a matter of math.
Assuming you're storing the time of the even with a timestamp, it makes everything easy.
You can get the timestamp of the current time using the following:
$now = time();
That's the basis for your calculation. From there, you need to figure out how many seconds (Since the timestamps go by seconds) are in two weeks.
Simple enough: 60602414. SecondsMinutesHoursDays. That leaves you with an end result of 1209600.
Knowing this, it's just a factor of combining those two numbers to grab the threshold, then using the SQL queries to grab anything under that threshold:
<?
$now = time();
$then = ($now+1209600);
$sql = "SELECT `field` FROM `table` WHERE `timestamp`<'$then' ORDER BY `timestamp` DESC";
?>
Something like that should work.