If the problem is just a corrupted file system, there's free software out there that can recover most if not all the photos. Just do a search on google. I forget what I've used in the past. Make sure you use a separate reader though and not the camera.
If its a hardware issue, well, that's a lot more expensive. Depending on the damage its possible that data recovery companies will be able to get to it by directly accessing the chips. But it'll cost you.
This is why I use Sandisk Extreme III cards. I once asked Sandisk about possible hardware corruption and was told that they almost never see any.