Labai paprasta. Kai ateina uzeris i puslapi , sugeneruoji kiek nori skaitmneu kombinacija su rand() ; , tada ta kombinacija atvaizduoji uzeriui ir prasai ja ivesti i inputa , ir tuo paciu idedi kombinacija i kita inpute su type atributo hidden reiksme .
va taip:
<?php
/* Sugeneruoja skaicius nuo 1111 iki 9999 , tai bus keturzenklis skaicius. */
$kodas = rand(1111,9999);
/* Tikrina ar yra ivesti duomenis */
if(isset($_REQUEST['user_kodas']) && isset($_REQUEST['tikras_kodas'])){
/* Tikrina ar geras kodas */
if($_POST['tikras_kodas'] != $_POST['user_kodas']){
$error = "Blooooooogas kodas. eik iš čia! ;D";
}
/* Tikrina ar nera klaidu */
if($error == ""){
$error = "Geeeeeeeeras kodas. eik i prieki :)";
}
}
/* atvaizduoja klaidos pranesima */
echo $error;
?>
<!-- Sukuriama forma -->
<form action="index.php" method="post">
<!-- Sukuriamas inoputas su tikro kodo($kodas) reiksme , kuris yra nematomas -->
<input type="hidden" name="tikras_kodas" value="<?php echo $kodas;?>">
<!-- Atvaizduojamas kodas useriui -->
Kodas:<?php echo $kodas;?>
<br>
<!-- Useris iveda koda -->
Iveskite koda:<input type="text" name="user_kodas">
<br>
<!-- Useris submitina ;D ;D ;D -->
<input type="submit" value="pirmyn">
<!-- Forma baigiasi ;D ;D ;D -->
</form>
Nu, čia ką tik parašiau , tai nežinau ar veiks, bet principas toks
Bet šitas labai nepatikimas , nes gali apeiti sita koda ir gerai pafloodint
EDIT: Pakomentinau