Autor Zpráva
dragon124
Profil
Dobrý den,
Dělam webovou stránku, která vás vyzkouší z francouzkých nepravidelných sloves.
Jsem zatím ve fázi vývoje, ale nefunguje to tak, jak bych si úplně představoval. I když to napíšu správně, napíše to "špatně, správně je to (TakJakJsemToNapsal)"
Zdroják je
<html>
<head>

</head>
<body>
<?php
$filecj = fopen("etre.cj", "r");
$cj = fgets($filecj);
fclose($filecj);
$filefj = fopen("etre.fj", "r");
$fj = fgets($filefj);
fclose($filefj);

echo $cj;



?>
<form method="POST">
<input type="text" name="odpoved" />
<input type="submit" />
</form>
<?php
if(isset($_POST["odpoved"])){
    if($_REQUEST["odpoved"] == $fj) {
        echo "spravne";
    }else {
        echo "spatne, ";
        echo "spravne je to ";
       echo $fj;
       echo ".";
    }}
?>
</body>
</html>
Prosím neřikejte mi, že byste to udělali jinak s SQL, spíš se na tom učim.
Předem děkuji za každou pomoc
Tori
Profil
fgets vrací řetězec i se znaky zalomení řádku na konci. Ořežte $fj i $_REQUEST['odpoved'] pomocí trim.

Pokud to nezabere, vypište si tu odpověď, co vám přišla z formuláře. Napadla mne chyba v kódování znaků, ale když píšete, že se vám to zobrazí správně, tak to asi v tomto nebude.
Jan Tvrdík
Profil
dragon124:
Ještě doplním, že není důvod kombinovat $_POST a $_REQUEST, pokud posíláš formulář post metodou, tak používej všude $_POST.

Ty čtyři echa pak jdou taky přepsat do jednoho.
echo "špatně, správně je to $fj.";

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: