This is a very complicated topic, which requires a longer answer. ;)
Before I start answering it, I'd like to define what we are talking about and then I'll go into methods and what the researchers about it, as well as my opinion on that.
In its original sense,
discipline is referred to systematic instruction given to disciples to train them as students in a craft or trade, or to follow a particular code of conduct or "order". Often, the phrase "to discipline" carries a negative connotation. This is because enforcement of order – that is, ensuring instructions are carried out – is often regulated through punishment.
Punishment is the authoritative imposition of something negative or unpleasant on a person or animal in response to behavior deemed wrong by an individual or group. The authority may be either a group or a single person, and punishment may be carried out formally under a system of law or informally in other kinds of social settings such as within a family.
(Wikipedia:
discipline,
punishment)
I'd like to say in advance that I am not the perfect mom and that I don't claim to know everything best, but my opinions are based on thorough research and so gain knowledge applied and tested on my own daughter (and it does work most of the time).
First we have to keep in mind that raising a child starts the day it is born. Starting to implant disciplinary rules at the age of 7, when the kid is completely out of control, is already too late.
In order to get a disciplined kid, you have to be a disciplined parent. Don't give the kid everything it wants, just because it is crying. Give the kid a fixed set of rules. Don't change the rules every second day. Make the rules understandable (no "just because" answers). And of course set up fixed punishments for not obeying the rules.
Physical punishments don't work on long term. I know that from myself and manymanymaaaaany observations I made with my clients. Most kids get used to it, so the parent ends up applying more and more force and more severe physical punishments until the situation gets completely out of control. Most kids learn to endure the few minutes of pain for being able to do whatever they want for HOURS. Not to mention that most kids go by the logic: if I am not caught, I won't get the punishment anyway.
It is better to teach your kid values. A good sense of right and wrong and make it understand why rules are important. Because kids don't follow rules that don't make sense to them.
It is also very important to give rewards for good behavior, because a child doesn't see a point in being a good kid, if the parents have only two modes of dealing with them: bad and normal.
Physical punishments don't leave always permanent marks, that influence us as grown ups later in life - but they are always completely pointless.