16x2 LCD shows only black boxes in the bottom line

Make sure that RS goes to pin 7 of arduino,EN goes to pin 8, and the four data pins (14,13,12,11) of the LCD goes to pins 12,11,10,9 of your arduino.
So it should be: LiquidCrystal lcd (7.8.9.10.11.12);
Now it should work fine!

You are missing the entire point of the numbers inside the parentheses - but it is not entirely your fault since the documentation is elusive.

You can use any available I/O pin on your Arduino for any of the LCD lines. All you have to do is express them, in a specific order, within the parentheses.
Here is how I recommend commenting the example sketch:

//LiquidCrystal lcd(RS, E, D4, D5, D6, D7);
LiquidCrystal lcd(7, 8, 9, 10, 11, 12);      // put your pin numbers here

Here's how you find the documentation:

Start here: http://arduino.cc/en/Tutorial/LiquidCrystal
Scroll down to the bottom
Use the Liquid Crystal Library link to get here: http://arduino.cc/en/Reference/LiquidCrystal
Use the LiquidCrystal() link to get here: http://arduino.cc/en/Reference/LiquidCrystalConstructor
And there it is under 'Syntax'

Simple, isn't it?

Don