Use SHOW TABLE STATUS;
This will give you a result set row (for all the tables in the database, if you don't specify which one with a FROM clause) with a whole bunch of columns:
Name
Type
Row_format
Rows
Avg_row_length
Data_length
Max_data_length
Index_length
Data_free
Auto_increment
Create_time
Update_time
Charset in MySQL 4.1+
Check_time
Create_options
Comment
Data_length is the size (in bytes) of the table data file.