To a certain extent, the conditional evaluates to "true" because it has to evaluate to some
thing, and "true" makes more sense (or less un-sense, perhaps?). In everyday terms, it's kind of like being able to prove any
thing, if you start with nonsense. If the moon is made of green cheese, then... heaven only knows where one could go from there!
If "P implies Q" evaluated to "false" when P was false, then you could end up, logically (such as in computer algorithms), stopping processes or making decisions based on that garbage input. By saying "garbage leads to continuing on without change", you don't allow the garbage to stop up the logical workings. Techically, a conditional is defined as being "false" only if P is true and Q is false. And since you're wanting a true P to lead to a true Q, this makes sense.
I will agree that "P is true only if Q is true" is confusing. This seems to be a philosophical / logical convention, that "P only if Q" is another form of "if P, then Q". I don't claim to follow the semantic (English-grammar) sense of this. It's just something to memorize.
Hope that helps a bit!