How to Construct a Box Plot
To do a boxplot, one first needs the first, second, and third quartiles of your data (these values define the "box"). The third quartile is the top of the box, the first quartile is the bottom of the box, and the second quartile is a line drawn through the middle of the box. The following figure shows you the "box" part of a boxplot.

The method recommended by Tukey, who invented the boxplot, is as follows:
In other words, with a dataset with an odd number of values, include the median in each of the two halves of the dataset and then find the median of each half. This gives the first and third quartiles. If the dataset has an even number of values, just split the data into two halves, and find the median of each half.
Here is an example using a small dataset, which contains an odd number of values:
35 47 48 50 51 53 54 70 75
Split the data into two halves, each including the median:
35 47 48 50 51 and 51 53 54 70 75
Find the median of each half. In this example, the first quartile is 48 and the third quartile is 54. The interquartile range is 54-48 = 6.
I'll add a number to the above dataset to illustrate how to find the quartiles for an even number of values:
35 47 48 50 51 53 54 60 70 75
Split the data into two halves:
35 47 48 50 51 and 53 54 60 70 75
Now find the median of each half. In this example, the first quartile is 48 and the third quartile is 60. The IQR is 60-48 = 12.
I prefer this method because a five number summary of five numbers gives the five numbers themselves. For example, take the dataset: 1 4 78 81 345. The minimum is 1, the maximum is 345, the median is 78. Splitting the dataset into two halves each containing the median gives Q1 as 4and Q3 as 81.
Drawing the Whiskers
The box also has whiskers that extend above and below the box. The whiskers give a broader picture of the range of the data.
The commonly accepted method among statisticians for drawing the whiskers is somewhat complicated. The maximum length of each whisker is 1.5 times the interquartile range (IQR). To draw the whisker above the 3rd quartile, draw it to the largest data value that is less than or equal to the data value that is no greater than 1.5 IQRs above the 3rd quartile. Any data value larger than that should be marked as an outlier. Mild outliers lie between 1.5 and 3 IQRs above the 3rd quartile while severe outliers are more than 3 IQRs above the 3rd quartile. The same principles apply when trying to determine the whisker below the 1st quartile and the lower outliers.
Here is an example, using the first set of numbers above using Tukey's method of determining Q1 and Q3:
35 47 48 50 51 53 54 70 75
The IQR is 6. Now, 1.5 times 6 equals 9. This is the maximum length of the whisker. Subtract 9 from the first quartile: 48 - 9 = 39. Note that 35 is an outlier, and the whisker should be drawn to 47, which is the smallest value that is not an outlier. To determine if 35 is an extreme outlier, subtract 18 (3 IQRs) from the first quartile: 48 - 18 = 30; since it is not less than than 30, then it is a mild outlier.
Add 9 (1.5 times the IQR) to the third quartile: 54 + 9 = 63. Any value larger than 63 is an outlier, so in this instance both 70 and 75 are outliers. Draw the whisker to the largest value in the dataset that is not an outlier, in this case 54. Since this value is the 3rd quartile, we draw no whisker at all. Mark 70 and 75 as outliers. To determine if 70 or 75 are extreme outliers, add 18 (3 IQRs) to the third quartile: 54 + 18 = 72; 70 is a mild outlier, and 75 is an extreme outlier.
The boxplot of this dataset is given below:

Odd situations
What if the median and the first or third quartiles are the same values?
What if the highest (or lowest) value that isn't an overlier IS the third (or first) quartile?
What do I do if a value is exactly 1.5 IQRs above the 3rd (or below the first) quartile? Is it an outlier or isn't it?