Autor Zpráva
davef6
Profil
mám formulář, který do kterého se pro odeslání musí vyplnit všechny údaje a opsat ověřovací kód, mám problém s tím ověřovacím kódem, když ho opíšu dobře, nebo špatně vždy mi to napíše Nebyl správně opsán kontrolní kód jak mám v podmínce. Potřebuju aby to šlo odeslat se správně zadaným kódem.

část z kódu index.php

<?php
function Random_Password($delka) {
srand((double)microtime()*1000000);
$possible_charactors = "ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890";
$string = "";
while(strlen($string)<$delka) {
$string .= substr($possible_charactors, rand()%(strlen($possible_charactors)),1);
}
return($string);
}
$spravnecislo = Random_Password(8);
?>
<div id="web">
<div id="left">
<span class="leftnadpis">Rychlý dotaz</span>
<form action="odeslat.php" method="post" id="Formular" onsubmit="return valid(this);">
<fieldset>
<p><label for="email">Emailová adresa:</label>
<input type="text" name="email" id="email" size="20" /></p>
<p><label for="zprava">Zde napište svůj dotaz:</label>
<textarea id="zprava" name="zprava" rows="7" cols="20"></textarea></p>
<p><label for="cislo">Opište kontrolní kód: <?php echo $spravnecislo ?></label>
<input type="text" name="cislo" id="cislo" size="20" /></p>
<p><input type="submit" value="Odeslat &gt;&gt;" title="Odešle vyplněný formulář" name="odeslat" />
</p>
</fieldset>
</form>

a soubor odeslat.php

<?
$email = $_POST["email"];
$zprava = $_POST["zprava"];
$cislo = $_POST["cislo"];
$email = trim($email);
$zprava = trim($zprava);
$cislo = trim($cislo);
$adresa = "na6230i@centrum.cz";
$predmet = "Rychlý dotaz";
$hlavicka = "From: $email";
if ($spravnecislo != $cislo) {
echo ("Nebyl správně opsán kontrolní kód");}
elseif ($email == "" || $email == "@" || $zprava == "") {
echo ("<br />Nejsou vyplněny všechny potřebné údaje.<br /><a href="http://www.6230i.forumno.net/mp3.php">zpět</a>");
}
elseif(mail($adresa, $predmet, $zprava , $hlavicka)){
echo ("<br />E-mail byl odeslán..<br /><a href="http://www.6230i.forumno.net/mp3.php">zpět</a>");
}
else {
echo ("<br />Nepodařilo se e-mail odeslat, ověřte zda jste připojeni k síti..<br /><a href="http://www.6230i.forumno.net/mp3.php">zpět</a>");
}
?>
nightfish
Profil
kde se ve skriptu odeslat.php bere proměnná $spravnecislo? chtělo by to zřejmě do formuláře doplnit ještě jednu položku, která bude mít typ hidden, jméno spravnecislo a bude obsahovat ono "správné číslo pro kontrolu"

btw tohle je přesně ten typ chyby, které odhalí error_reporting(E_ALL)
Toto téma je uzamčeno. Odpověď nelze zaslat.

0