Zadejte hledaný výraz...

Problém s testováním formuláře

Default
verified
rating uzivatele
(94 hodnocení)
26. 8. 2011 12:10:31
Napsal Aleš Jiříček;694081
je to delane pro lidi nkteri nic takoveho nikdy nevideli, pro uplne zacatecniky, takze se prosim prihlas do tematu
Taky o něčem podobným přemýšlím zorganizovat v příštím roce v Brně, uvidíme ještě jak to dopadne :D
26. 8. 2011 12:10:31
https://webtrh.cz/diskuse/problem-s-testovanim-formulare/strana/2#reply670787
hm
verified
rating uzivatele
(20 hodnocení)
26. 8. 2011 12:14:35
Napsal kubiro;694089
Taky o něčem podobným přemýšlím zorganizovat v příštím roce v Brně, uvidíme ještě jak to dopadne :D
pokud s tim budes chtit pomoci pripadne mit dalsiho cloveka k vykladu a k pomoci ucastnikum s hotovymi kody, klidne me v te dobe kdy ot budes poradat kontaktuj ;) ale stop OT
26. 8. 2011 12:14:35
https://webtrh.cz/diskuse/problem-s-testovanim-formulare/strana/2#reply670786
$ok = eregi("^+*@+*.{2,5}$", $email); // vrati bool true do promene $ok pokud je $email validni mail ( neco@example.com )
:)
26. 8. 2011 12:36:33
https://webtrh.cz/diskuse/problem-s-testovanim-formulare/strana/2#reply670785
Jan Matoušek
verified
rating uzivatele
(12 hodnocení)
26. 8. 2011 19:10:57
Napsal Z3NTIVA;694069
pořad to nechapu a stve me to když ses tak rozepsal ( promin ) .. :(
zkusím aleše přílad trochu víc okomentovat:
error = false; // ze začátku je nastaven error na false
if(nesedi_email){ // když nesedi_email vrátí true (true je jako ano nesedí) provede se:
error = 'nesedi email'; //místo false se uloží nesedí email
}elseif(nesedi_captcha){ // když nesedi_email vrátí false (tak je e mail v pořádku) a kontroluje se zda nesedi_captcha nevratí true
error = 'nesedi captcha'; //místo false se uloží 'nesedi captcha'
}elseif(prazdny_text){ // podobně jako 2 řádky výše
error = 'prazdny text';
}
if(error===false){ // pokud error je false (původní hodnota a žádné podmínky nebyly splněny)
// kod pro odeslani
} else {
// vypis chybu
}
errors = array(); // nastaví se error na pole
if(nesedi_email){ //když nesedi_email vrátí true (nesedi_email vrati true pokud email je spatne zadan)
errors[] = 'nesedi email'; // uloží se na volnou pozici v poli nesedí email
}
//následujcí podmínky se hodnotí podobně jako předešlá
if(nesedi_captcha){
errors[] = 'nesedi captcha';
}
if(prazdny_text){
errors[] = 'prazdny text';
}
if(!(bool)count($errors)){ // pokud není naplněno pole
// kod pro odeslani
} else { //jinak
foreach(errors as error){ //projít pole
echo error.'
';
}
26. 8. 2011 19:10:57
https://webtrh.cz/diskuse/problem-s-testovanim-formulare/strana/2#reply670784
Jakub Hošek
verified
rating uzivatele
(23 hodnocení)
26. 8. 2011 19:14:12
Zdravím, všem vážně moc díky za rady, již jsem to nějak s pomocí kubira vyřešil :
viz. http://www.ucimsephp.howto.cz/zpracuj.php
Máte nějaké návrhy co zkrátit, vylepšit, atd ? :)
díky
26. 8. 2011 19:14:12
https://webtrh.cz/diskuse/problem-s-testovanim-formulare/strana/2#reply670783
Jan Matoušek
verified
rating uzivatele
(12 hodnocení)
26. 8. 2011 20:00:50
no pokud chceš návrhy co zlepšit, tak sem musíš postnout skript. Z té stránky se dá odhadnout pouze co ten script dělá:-)
26. 8. 2011 20:00:50
https://webtrh.cz/diskuse/problem-s-testovanim-formulare/strana/2#reply670782
Jakub Hošek
verified
rating uzivatele
(23 hodnocení)
26. 8. 2011 20:09:24
aha, omlovám se, nedošlo mi že script nebude vidět :)
Tady to je :
ucim se php - formulář
function check_email($email) {
$atom = ''; // znaky tvořící uživatelské jméno
$domain = '({0,61})'; // jedna komponenta domény
return eregi("^$atom+(\.$atom+)*@($domain?\.)+$domain$", $email);
}
$vasmail = $_POST ;
$tema = $_POST ;
$spameri = $_POST ;
$zprava = $_POST ;
$komu = 'jakub.hosek@klikni.cz' ;
if ($_POST) {
$poleschybama = array() ;
$pocet_chyb = 0 ;
$pocet_policek = 0 ;
if (check_email($vasmail)== true)
{
$poleschybama = "OK" ;
$pocet_policek++ ;
}
else
{
$poleschybama = "Vámi zadaný e-mail je neplatný ";
$vasmail = "";
$pocet_chyb++;
$pocet_policek++;
}
if ($tema != "" )
{
$poleschybama = "OK" ;
$pocet_policek++ ;
}
else
{
$poleschybama = "nevyplnili jste políčko " téma " ";
$tema = " " ;
$pocet_chyb++;
$pocet_policek++;
}
if ($spameri == 34 )
{
$poleschybama = "OK" ;
$pocet_policek++ ;
}
else
{
$poleschybama = "Špatně jste vypočítali příklad ";
$spameri = " " ;
$pocet_chyb++;
$pocet_policek++;
}
if ($zprava != "" )
{
$poleschybama = "OK" ;
$pocet_policek++ ;
}
else
{
$poleschybama = "nevyplnili jste políčko " zprávy " ";
$zprava = " ";
$pocet_chyb++;
$pocet_policek++;
}
if ($pocet_chyb == 0 )
{
Mail ($komu , $tema, $zprava );
$vypis = 'Email byl úspěšně odeslán, budu vás kontaktovat do 24 hodin' ;
}
else
{
$vypis = 'formulář nejde odeslat, zkontrolujte vámi zadané údaje, prosím' ;
}}
else
{
$vasmail = "Váš e-mail";
$tema = "Tema" ;
$spameri = "ochrana kvuli spamu... :) " ;
$zprava = "Sem napište vzkaz";
}
?>

Kontaktujte mne



Kolik je 9 + 25 ?

26. 8. 2011 20:09:24
https://webtrh.cz/diskuse/problem-s-testovanim-formulare/strana/2#reply670781
Jan Matoušek
verified
rating uzivatele
(12 hodnocení)
26. 8. 2011 21:25:38
celkem to vypadá ok
to co mě trklo:
1) vkládej to na forum pomocí php kodu :-) (špatně se to takhle čte)
2) $poleschybama bych raději volil takto: $poleschybama atd... lépe se v tom orientuje (pokud by si napsal něco velkého, tak nebudeš zachvilku co 1 2 znamená a navíc pokud by si do toho scriptu doplnil nějakou podmínku doprostřed tak se ti ty výsledky šoupnou
3) pro výpis do šablony: můžeš použít zkrácenej formát
26. 8. 2011 21:25:38
https://webtrh.cz/diskuse/problem-s-testovanim-formulare/strana/2#reply670780
Jakub Hošek
verified
rating uzivatele
(23 hodnocení)
26. 8. 2011 21:28:54
Díky za tipy :)
26. 8. 2011 21:28:54
https://webtrh.cz/diskuse/problem-s-testovanim-formulare/strana/2#reply670779
w3m
verified
rating uzivatele
(22 hodnocení)
31. 8. 2011 01:04:02
Napsal Paradiso;694275
3) pro výpis do šablony: můžeš použít zkrácenej formát
můžeš, ale neměl bys, pokud chceš zachovat přenositelnost kódu (ne všude jsou short-tags povoleny)
31. 8. 2011 01:04:02
https://webtrh.cz/diskuse/problem-s-testovanim-formulare/strana/2#reply670778
Pro odpověď se přihlašte.
Přihlásit