Stránka 1 z 1

anti-bot ochrana- podmínka  Vyřešeno

Napsal: 21 lis 2011 21:40
od honzaik
čau vytvářím si velice jednoduchou antibot ochranu ale zlobí mě tam jedna podmínka, která, nevím proč, nefunguje
zde je kod HTML

Kód: Vybrat vše

<center>
Zadej součet <?php echo $x." a ".$y ?>.
<br>
<form action="" method="post">
<input name="in" type="text">
<br>
<input name="sub" type="submit">
<br>
</form>
</center>

a zde PHP

Kód: Vybrat vše

<?php
$x = rand("0", "20");
$y = rand("0", "20");
if ($_POST["sub"] == TRUE)
{
   $soucet = $x + $y;
   if ($soucet == $_POST["in"])
   {
      echo "Well done";
   }
   else
   {
      echo "Nauč se počítat!";
   }
}
else
{
      #nothing
}
?>

přímo toto zde nefunguje

Kód: Vybrat vše

if ($soucet == $_POST["in"])

vůbec nevím proč, když to je uplně normální porovnávání

Re: anti-bot ochrana- podmínka

Napsal: 22 lis 2011 09:31
od Stene
Píšeš si tam co se ti zachce.. Aby si ty dvě proměný dostal zároveň, ulož si je do toho formuláře a po odeslání je zkontroluj

Kód: Vybrat vše

<?php
$cislo1 = rand(1, 5);
$cislo2 = rand(1, 5);
$vysledek = $cislo1 + $cislo2;

if (isset($_POST['submit']))
{
if ($_POST['spam'] == $_POST['soucet'])
{
echo 'Spravne !!!';
}
else
{
echo 'Spatne !!!';
}
}
echo 'Aktualni stav pred klikem na Odeslat: '.$cislo1.' + '.$cislo2.' = '.$vysledek;
?>

<form action="" method="post">
<?php
echo 'Kolik je '.$cislo1.' + '.$cislo2.'?';
?>
<input type="text" name="spam" />
<input type="hidden" name="soucet" value="<?php echo $vysledek; ?>" />
<input type="submit" name="submit" value="Odeslat" />
</form>

Re: anti-bot ochrana- podmínka

Napsal: 22 lis 2011 19:21
od honzaik
ok dík, a neni nějaký jiný řešení? než přes ten hidden input?

Re: anti-bot ochrana- podmínka

Napsal: 22 lis 2011 20:06
od CZechBoY
session

Re: anti-bot ochrana- podmínka

Napsal: 22 lis 2011 20:12
od Stene
Co se ti na tom řešení nelíbí?

Re: anti-bot ochrana- podmínka

Napsal: 22 lis 2011 20:52
od honzaik
czechboy: díky
steven: just askin'