Będzie off top ale czy pomoże ktoś z modyfikacją skryptu? Mam rozumieć, że grzebać muszę tylko w pliku skryptu czy w pliku html też coś trzeba pozmieniać? Nie chcę szaleć, chciałbym aby sprawdzało poprawność wypełnienia tylko dwóch pól: imię i kod. Jak to zadziała to będę wiedział, że formularz przychodzi pusty z innego powodu i nie jest nim "spacjowanie" pól dla żartu.
W html mam pola input:
name="imię"
name="kod"
Mój skrypt.php wygląda tak:
<?php
$do = 'mojmejl@pocztaxxxxxxx.pl';
$imię = $_POST['imię'];
$ulica = $_POST['ulica'];
$kod = $_POST['kod'];
$miejscowosc = $_POST['miejscowosc'];
$telefon = $_POST['telefon'];
$k01 = $_POST['01'];
$k02 = $_POST['02'];
$k03 = $_POST['03'];
$k04 = $_POST['04'];
$k05 = $_POST['05'];
$tresc .= "Imię:".$imię."\n\n";
$tresc .= "Ulica: ".$ulica."\n\n";
$tresc .= "Kod: ".$kod."\n\n";
$tresc .= "Miejscowość: ".$miejscowosc."\n\n";
$tresc .= "Telefon: ".$telefon."\n\n";
$tresc .= "biały: ".$k01."\n\n";
$tresc .= "czarny: ".$k02."\n\n";
$tresc .= "niebieski: ".$k03."\n\n";
$tresc .= "zielony: ".$k04."\n\n";
$tresc .= "czerwony: ".$k05."\n\n";
@mail($do, 'ankieta', $tresc, "MIME-Version: 1.0\r\n"."Content-type: text/plain; charset=ISO-8859-2\r\n"."From: $mail\r\n");
header('Location:
http://www.mojastrona.pl/dziekuję.html'); echo $tresc;
?>
Tutaj coś znalazłem ale nie mam pojęcia gdzie to powklejać i czy to w ogóle jest poprawne. Chodzi tylko o imię i kod i aby sprawdzało czy zamiast imienia i kodu ktoś nie klepnął kilka razy spacji:
function poprawneImie($imię)
{
if (!preg_match('/^[a-z]$/', $imię))
{
return false; //zwraca "false" jeśli imię jest błędne
}
return true; //zwraca "true" jeśli imię jest poprawne
}
function poprawnyKod($kod)
{
if (!preg_match('/^[0-9]{2}+-[0-9]{3}$/', $kod))
{
return false;
}
return true;
}
//czy puste:
if(empty($_POST['imię']))
{
echo "Wypełnij pole imię";
}
if(empty($_POST['kod']))
{
echo "Wypełnij pole kod";
}
if(!poprawneImie($_POST['imię']))
{
echo "Błędne imię";
}
if(!poprawnyKod($_POST['kod']))
{
echo "Błędny kod";
}
Z góry dzięki.