In my opinion, the best way would be to use JavaScript, which would actually disable the Submit button once the form has processed. This way, you can't press it again, so you don't need to worry about ID's etc. That checking is good, if you're worried about users actually REFRESING the page.
However, for your problem, I think this should do the trick:
<script language="JavaScript">
function setSubmit() {
document.mainform.Submit.disabled=TRUE;
}
</script>
<form action="whatever.php" name="mainform" method="POST" onSubmit="setSubmit();">
<input type="Text" etce tc whatever>
<input type="Submit" name="Submit" value="Submit">
</form>
What this would do, as the user presses the Submit button, it'll grey it out, so they CANNOT click it again.
This is quick code, so it's not very dynamic. For this to work, you have to have name="mainform" in your <FORM> line, and your submit button has to have the name of Submit... otherwise, change the variable names, it's simple enough 😉
Hope this helps,
Kevin