How can I fix this leaky water heater?
I ran out of space composing an comment response to Rick's last comment, so I'm going to just make everything into an answer. First my original comment:

This heater appears to be much more than 20 years old! I agree a new installation is the best option. However, if money is tight, the valve alone should be replaceable for little money and will fix the leak, but not the other deficiencies. But with old plumbing, you are as likely to break something as to take it apart, so you may end up with a new heater anyway.

And my response to Rick's comment:

I doubt the water is very hot by the time it drips out, any hose should work, use a washing machine hose if you want one that is heat resistant in case the valve actually blows. You will need a male pipe thread to male hose thread adapter fitting to connect a hose to it. Alternately you could fabricate a drain out of CPVC pipe and fittings.

To replace the valve, take the old one out and take it to a hardware store and find a "Domestic Temperature and Pressure Relief Valve" of similar configuration. Ensure the pipe thread that goes into the heater is the same size and gender. Also insure the temperature probe is similar in length or at least is long enough to extend through the heater's internal insulation and protrudes into the tank proper. While you're there, get some pipe dope and enough CPVC pipe, glue and fittings to extend the outlet to near the floor. You don't want a family member sprayed with scalding hot water should the valve release when someone is nearby.

Honestly, you should avoid the sink/hose drain option and replace the valve, they are not that expensive. Just don't break anything removing it. If something feels like is about to break on disassembly, then maybe the hose/sink option makes sense. But for your own sake, please start saving money to replace the entire installation. It's not going to last a lot longer.