Walidacja formularza

Witam!

Mam taki formularz…

<?

$1 = (htmlspecialchars ($_POST['1']));

$2 = (htmlspecialchars ($_POST['2']));

$3 = (htmlspecialchars ($_POST['3']));

$4 = (htmlspecialchars ($_POST['4']));

$5 = (htmlspecialchars ($_POST['5']));

$6 = (htmlspecialchars ($_POST['6']));

      if ($1 && $2 && $3 && $4 && $5 && $6) {

 mysql_connect ("xxxxx", "xxxxxx", "xxxxxx") or

 die ("Error!");

 mysql_select_db ("xxxxxx") or

 die ("Error!");

mysql_query("INSERT INTO `wpisy` ( `nr` , `1` , `2`, `3`, `4`, `5`, `6`)

VALUES ('','$1','$2','$3', '$4', '$5', '$6')");

mysql_query("INSERT INTO wpisy 1='".$1."', 2='".$2."', 3='".$3."', 

4='".$4."', 5='".$5."', 6='".$6."' WHERE nr = '1'");

if ($wynik = mysql_query ($query)) {print "Błąd! ";}else{echo "

OK
";} } else { echo " A (…) B C D E F "; } ?>[/code]

… i chcę aby przed dowaniem skrypt sprawdzał jego poprawność. Jak to zrobić?

Poprawność - czyli co? Czy wszystkie pola zostały wypełnione?

tzn. w jakim znaczeniu ‘poprawność’ ?

Bo trochę nie rozumiem :lol:

Jest kilka możliwości …

Sprawdzanie na ilość znaków, czy dana zmienna nie jest pusta, czy formularz został wysłany itd.

Skonkretyzuj pytanie, a postaram się pomóc :smiley:

poprawność =

czy “1” jest zaznaczone

czy “2” jest wypełnione + max. 100 znaków

czy “3” jest wypełnione + czy we wpisanym adresie jest http://

czy “4” jest wypełnione

czy “5” jest wypełnione + w takim schemacie: “dowolna ilość znaków (dowolna ilość liczb)”

“6”- nie trzeba sprawdzać

:lol:

myślę, że będzie działać ;]

<?php


$l = 'test';

$l2=2;

$l3='http://dobreprogramy.pl';

$l4=4;

$l5=5;



if(!empty($l) && !empty($l2) && !empty($l3) && !empty($l4) && !empty($l5)){

$blad=''; //ustawiamy zmienną $blad na pustą

if(strlen($l2)>100)

$blad.='opcja 2 może mieć max 100 znaków
';


if(!ereg('http://',$l3))

$blad.='nie znaleziono http
';


}else{

echo 'nie wypelniles wyszystkich pól formularza';

}

if($blad!='') echo $blad;

else{

echo 'przetwarzaj formularz';

}


?>

ps.

nie używaj liczb jako nazwy zmiennych ;]

zamiast liczb dałem l1 (L1) l2 itd.

Wielkie dzięki L337 Crew