I'll be vague and you tell me where you need more info.
Initial query
PHP Code:
$connection = mysql_connect( 'server', 'username', 'password' )
or die( mysql_error( ) );
$connection = mysql_select_db( 'database', $connection )
or die( mysql_error( ) );
$query = mysql_query( "SELECT * FROM logs WHERE date = '2009-08-23'", $connection )
or die( mysql_error( ) );
I've add "or die( mysql_error( ) )" to all these above to help you troubleshoot any connection or query issues.
The first 2 lines of code connect to your server (this value is generally 'localhost') using your username and password (don't literally use 'username' and 'password') which you've configured when you set up mysql. Then, since your server can usually host multiple databases, you need to replace 'database' with the name of the database you wish to access.
The 3rd line of code returns every column from each value that is date stamped as occuring on August 23, 2009.
Displaying the results
PHP Code:
if( $query && mysql_num_rows( $query ) )
{
print( "<table>\n" );
while( $result = mysql_fetch_assoc( $query ) )
print( " <tr> <td>{$result[ 'name' ]}</td> <td>{$result[ 'userid' ]}</td> </tr>\n" );
print( "</table>\n" );
}
This portion only occurs if the query's syntax was correct and produced results. If both these conditions are met, the opening tag of a table is printed, then each result from the query as a row, then the closing tag of the table. Using a table here assures your data will structured as you were initially concerned.
The WHILE statement iterates through each row of the result in the order it was returned and stores it in an associative array named $result. From there, each column can be referenced by its field name in your database; this sample assumes you have fields 'name' and 'userid' in your table named 'logs'.
This can get infinitely more complex as you customize this. For example, ordering results in the query or using user criteria in your query (which you MUST clean first).
Godspeed!