Du skal huske på, at du ikke bare kan blokere eksekveringen af koden, da det jo bl.a. også ville medføre, at resten af dokumentet(layout design osv.) ikke ville kunne indlæses, før du havde indtastet dataene. Og det ville være skidt.
Jeg gik og tænkte på hvor koden løber direkte ned i den der IF-statement... og det er vel fordi jeg ikke lige bad om at få tjekket om brugeren havde trykket på min submit knap inden koden inde i IF-statement'en bliver evalueret - dooh !
Så jeg lavede en if (isset($_GET['submit'])){}
- if (isset($_GET['submit'])){
- if (isset($userInput) && $userInput == $result){
-
- $formSubmitPage = "admin/code_createusercaptcha.php";
-
- }
- else {
-
- $formSubmitPage = $_SERVER["PHP_SELF"];
-
- echo "fejl ! - din CAPTCHA er forkert";
-
- }
- }
- ;?>
og nu venter den pænt indtil jeg har indtastet min CAPTCHA
Det du skal gøre er at overflytte din PHP kode til en anden fil således, at når brugeren indtaster sine data samt CAPTCHA, videresender du de data til processering i den pågældende fil.
Ja, det er vel en mulighed, men jeg tænkte på om det er nødvendigt, da brugeren skal blive på siden, hvis CAPTCHA'en er forkert.
Hvad skal du bruge projektet til?
Jeg skal ikke bruge det til noget, ud over at lære PHP - jeg er i øjeblikket ved at uddanne mig til WebIntegrator.
Nå, men tilbage til mit projekt...
Nu mangler jeg "bare" at finde ud af:
1. hvorfor formularen ikke bliver submittet til: admin/code_createusercaptcha.php når CAPTCHA'en er rigtig.
- <form action="<?php echo $formSubmitPage;?>" method="GET">
2. hvorfor jeg ikke ser: "fejl ! - din CAPTCHA er forkert"; når CAPTCHA'en er forkert.
3. hvorfor man skal tilsyneladende skal bruge echo i:
<form action="<?php echo $formSubmitPage;?>" method="GET">
selvom man ikke skal skrive noget ud til skærmen.