If the drive cannot be detected, then there isn't much hope for it. Otherwise, if it does show up, then zero-fill it and hope that this will remap any bad sectors. Then try a comprehensive SMART diagnostic. Look for reallocated, pending, or uncorrectable sectors.
HD Sentinel (DOS / Windows / Linux): http://www.hdsentinel.com/
HDDScan for Windows: http://hddscan.com/
See this article for SMART info: http://en.wikipedia.org/wiki/S.M.A.R.T.