As always I have to warn folks that once the patching begins, it's an uphill battle to keep them going. I often reinforce weak areas with large panels. Then I quilt through the layers with designs to keep them sturdy.
This is what the inside looks like with new panels, though you can see where they were worn through again. I always serge the edges of the patch before pinning in place and sewing together. It is important to trace the shape carefully for these kinds of repairs because if the crotch shape isn't cut right it will be uncomfortable and it will be difficult to sew in place. I attach these panels right to the seams, often to the edges of the pockets and sometimes further down the pant legs.
Here's the inside after further reinforcement.
And the outside again.
Sometimes folks give me fabric they prefer to have as patches. The green denim which I used for these was fairly worn already so we knew this would wear through quickly. Patching behind this with darker denim creates a nice contrast and the scruffy frayed edges of the original holes look cool after a few washes. Sometimes its best to cut those frayed parts out when sewing in a patch so that you can really secure those weak edges and make sure fabric is sturdy. Other times you can get away with leaving some for show.
Here is an example of a less noticeable patch of the same sort.
Some repairs are more fun to patch from the outside. These are one of my favorite pairs of pants and I like to let them get pretty destroyed before patching again. I add from the outside and let the edges fray. They are surprisingly sturdy from years of quilting and many layers of fabrics.