Jak mám ošetřit povinně vyplnňovaná textová pole ve formuláři? Zkusil jsem to označit jako povinné ve FPXPress, ale nefunguje to.
To jsi mu teda poradil .... lukasiku
opět stejné rada: PHP i not copy&paste but php is about programing!
Prostě nestačí si najít pouze najít zdroják, nebo čekat aŽ mu to někdo napíše, musí u toho taky přemýšlet a programovat!
Pane Lukasiku, nepreji si, abyste mi zanesvaroval mail svymi moudrostmi. Nepotrebuji je. Toto forum je pro ty, kteri potrebuji radu a ty, kteri chteji poradit. Ppokud poradit nechcete, nemusite. Pak ale udelate nejlepe, kdyz nebudete psat vubec nic.
Dekuji za pochopeni.
>abyste mi zanesvaroval mail svymi moudrostmi....
...tak si odskrtni policko zasilat emailem. (ehm. lukasik neni pan ale mlady pan :-)
ale tezko ti poradit takhle ve foru, pokud jsi zvykli jen na FP (to ti nepujde, jsi na spatne ceste). chce to pouzit php, pripadne v kombinaci s js, ale to je nadlouho. v php muzes testovat, zda dana promena byla vyplnena, jinak ho vykopnout znovu na form, v js to jde jeste elegantneji testovat zda neni object prazdny a nedovolit submit, ale to zase nemusi fungovat vsem.
mozna az se trosku proberu, poputuje do tveho emailu nejaka ukazka (ale mam strach abych se zas nedostal do nekonecne smycky:-) - kdyz tak se ozvi, ale nejdrive mrkni na nejake zaklady...
m.s.
S FPXPress nemam zadne zkusenosti (co to vlastne je?) ...
Validace formulare se na strane klienta (v prohlizeci) muze provadet pomoci JavaScriptu ... osetrenim eventu onSubmit
<form method="post" name="test" onSubmit="return sf_validate()">
... pred tim musi jeste predchazet definice te validacni funkce sf_validate() ...
<script language="javascript">
function sf_validate()
{
if (document.forms[0].ps_nick.value=="") {
window.alert("Nezadali jste platné jméno.");
return false;
}
if (document.forms[0].ps_email.value=="") {
window.alert("Nezadali jste platný email.");
return false;
}
return true;
}
</script>
Tento kod by mel byt funkcni v IE ... ale neni napsan zrovna nejlepe ... validacni fce se odkazuje na forms[0] ... prvni formular na strance ... lepsi by asi bylo ho pojmenovat nebo funkci predavat parametrem. Na psani JS doporucuju sehnat nejakou prirucku nebo manual, kde bude rozliseno jak kterou funkci podporuji ruzne prohlizece.
Ja osobne nechavam validaci az na strane servru (pomalejsi reakce pro uzivatele, ale je spolehlivejsi - nemusi se resit problemy s prohlizeci - treba JS vubec nemusi podporovat ;) ... Pokud pro zpracovani formulare pouzivate PHP, neni nic snazsiho nez ...
if ( !isSet($name) || (trim($name)=="") ) {
// zobraz hlasku o nezpacovani
} else {
// zpracovat
}
Nechci na nikoho narazet, ale v tomto pripade se chci Lukasika zastat, tento dotaz mi prijde natolik elementarni, ze ho chapu :)
Radek
Nemyslel jsem nic na tebe, ale porstě většina lidí si myslí že jim to prostě někdo napíše a oni budou v pohodě...
Nevím tak dám ti sem jednoduchý příklad abys neřekl..
<?
if($odesila){ //Kontrola pro ty co nepodporujou JS
if($neco == ""){
print "Pole se jmnénem neco nebylo vyplneno!";
}
else {
print "pole bylo vyplňeno...";
}
}
?>
<Script language=javascript>
function GetElement(e)
{
if(document.all) return document.all[e];
if(t = document.getElementById(e)) return t;
else return document.getElementByName(e)[0];
}
function zkontroluj() {
if (GetElement("neco").value == "") {alert("Zapomněl jsi napsat text do pole neco!"); return false}
else {alert("Vyplnil jsi pole neco, vše by mělo být v pořádku"); return true}
}
</Script>
<form method=post onSubmit="return zkontroluj()">
<Input type=text name=neco value="">
<Input type=submit value=odeslat>
<Input type=hidden value=1 name=odesila>
</Form>
Nevím, zda to bude fachčit, psal jsem to jen na rychlo a netestoval!
hr vr, to jsem se s tim nemusel psát když to radek napsal taky...:o).
Dekuji za rady. Vyzkousim to. Normalne delam ve Visual FoxPro a v internetove presentaci jsem zacatecnik, takze kladu zacatecnicke otazky. FpXpress.exe je dosti oholeny MS Frontpage Editor, ktery MS distribuuje od MSE V4 vyse spolu s explorerem.
> poputuje do tveho emailu nejaka ukazka...
...beru zpet, vzhledem k tomu, ze uz to tady vlastne mas napsane :-) jen aby jsi nerekl, ze jsem neco slibil a nedodrzel :-)))
pokud budes citit, ze ti nejak mohu pomoci, zkus se ozvat sam... :-)
m.s.