The most common reason is a loose or badly connected data cable. Make sure the data cable is plugged in properly, both into the hard disk, as well as the motherboard. The same goes for power cable, so check that as well. Also, make sure that the red lines on the data cable and power cable are adjacent to each other.
One you've ruled out any cable problems, check the jumper setting on the drives. If two drives are connected to a port, make sure one is set as master and the other as Slave, or else both are set to Cable Select.
Next, make sure your drive controllers on your motherboard are not disabled. These controllers control IDE devices, and without them the BIOS cannot detect the drives. Go to the BIOS setup, and under the Integrated Peripherals menu, make sure that 'On Board HDC' is enabled for both Primary and Secondary channels. Also ensure that all drive types are set to AUTO under the Standard CMOS Setting. If you are not comfortable with changing the BIOS values, just reset the BIOS to factory defaults.
When all else fails, so has your hard disk send it to a technician for servicing.