Autor Zpráva
Daniel47
Profil
Ahoj potřebují udělat kontrolu jestli formulář má všechny políčka vypňené.
Dá se udělal takto:

if($_POST['zprava'] != null) {
//Další kód
} else {
echo ('Vypňte všechno!');
}

Ale když zadám víc mezer, tak se odešle formulář na server, bez textu.
Třeba takto jméno bude vypadat: " " samé mezery a já potřebují udělat aby se formulář s mezerama neodeslal.


Budu rád za odpověď.
Ikki
Profil
Empty?
Daniel47
Profil
Ikki:
Jaké Empty?
Keeehi
Profil
Dá se udělal takto:
No vzhledem k titulku se to udělat takto nedá. Toto je kontrola až po odeslání na server. Kdyby jsi chtěl opravdu kontrolu před odesláním na server, musel bys využít javascript.

Jaké Empty?
lmgtfy.com/?q=empty+php

I když samotné empty na to stačit nebude. Tím projde prázdný řetězec, ale mezera už ne. Před tím bude potřeba použít trim. A ani se nezkoušej ptát, jaký trim.
Daniel47
Profil
Já potřebují zakázat odeslání formuláře, který není vyplňen. A chci to kontrolovat na straně serveru, ne JavaScriptu.
Keeehi
Profil
Daniel47:
No lepší by bylo to formulovat jako přerušení běhu scriptu protože technicky formulář necháš odeslat a v php scriptu jen ověříš nějakou podmínku. Nicméně s tím co bylo zde už napsáno, tak bys to měl v pohodě zvládnout.
Taps
Profil
Daniel47:
tady je jednoduchá ukázka řešení mike.treba.cz/formulare-v-php-osetreni-odesilanych-dat
Daniel47
Profil
Dík, vyzkouším.
Daniel47
Profil
Když použíjí empty, tak to funguje, ale když zadám mezeru tak se formulář odešle.
Dá se to mu nějak zabránit?
Mlocik97
Profil
Daniel47:
JS, už mi inak z tebe rupne cievka
T-fon
Profil
Daniel47:
Když použíjí empty, tak to funguje, ale když zadám mezeru tak se formulář odešle.
Dá se to mu nějak zabránit?

Keeehi:
I když samotné empty na to stačit nebude. Tím projde prázdný řetězec, ale mezera už ne. Před tím bude potřeba použít trim. A ani se nezkoušej ptát, jaký trim.

Vždyť tu odpověď už máš napsanou.
Daniel47
Profil
T-fon:
Dík, vyzkouším.


Mlocik97:
“JS, už mi inak z tebe rupne cievka„
Co to má znamenat za větu? Jaká cívka? A Mlociku97 nebylo by lepší kdybys nepsal nesmysli.
Ikki
Profil
Já se z tebe počůrám :-D
Keeehi
Profil
Daniel47:
A Mlociku97 nebylo by lepší kdybys nepsal nesmysli.
No, on občas nesmysly píše, ale teď to smysl dává. Jen je to slovensky. Takže je jasné že nemyslel cívku ale cévu.
Taps
Profil
Daniel47:
v tom odkazu co jsem poslal je i funkcni ukazka....byl bych vdecny kdyby ses na to podival a zkusil sam pochopit princip.
Daniel47
Profil
Trim mi nefunguje, když jsem ho použíl tak se mi pořád odešle formulář.
Tomášeek
Profil
Daniel47:
Asi je rozbity, mě funguje tak, jak má :-)
Daniel47
Profil
Kód:

if(!trim($text)) {
//echo
} else {
//echo
}
Keeehi
Profil
Keeehi:
I když samotné empty na to stačit nebude. Tím projde prázdný řetězec, ale mezera už ne. Před tím bude potřeba použít trim.
^^^
Vše co potřebuješ vědět jsem ti už napsal ;)
Daniel47
Profil
Už mi to funguje, dík, řešení je dole.



Kód zde:

if(!empty(trim($_POST['text']))) {
//echo
//Pokračování 
} else {
//echo
}
Daniel47
Profil
A kontrola javascriptém?
Ikki
Profil
Co s ní?
Daniel47
Profil
Jak udělat?
pcmanik
Profil
Daniel47:
A čo si skúšal? Rozbil sa ti google?

document.getElementById('formId').onsubmit = function() {
    if (document.getElementById('elementId').value.trim() == '') {
        return false;
    }
};
Tomášeek
Profil
Daniel47:
Jak udělat?
Naprogramovat.

Ono to není nic těžkého, kontrola řetězce v inputu, jednoduché reguláry (ty se dají v tomto měřítku v dostačujícím objemu nastudovat za den, dva) a základní funkce pro práci s řetězci, podobné těm v PHP (defacto jejich ekvivalenty s JavaScriptovskou syntaxí).

Jenže to bys neměl být lempl. Proč si něco proboha nenastuduješ? Udělat projekt (případně, jestli se chceš tímto stylem něco naučit) stylem "Jak se dělá tohle? Výborně, Ctrl+C, Ctrl+V". "Jak se dělá toto? Aha, Ctrl+C, Ctrl+v". "Jak prosím udělám tohle? Aha..." fakt nejde.


A vy ostatní. Dopřejte prosím Danielovi prostor se něco naučit. Nebo si vás tu zotročí úplně!
Mlocik97
Profil
Tomášeek:
súhlasím, ja to hovorím tady už týždne...
Ikki
Profil
Souhlasím. Jak jsem psal. Ptát se může, ať se zajímá a učí, ale nikdo mu tady nebude psát hotová řešení na každou patlaninu a už vůbec ne na základy celého jazyka. Jako nevědět jak funguje SESSION nebo jak stanovit podmínku s POST a TRIM mi přijde až hloupé. No na druhou stranu se můžeme zasmát jak ochotní dokážeme být.
Daniel47
Profil
Nebudu vás otravovat, příště budu víc hledat na googlu.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0