NOVINKA: Získej 40 hodin praktických dovedností s AI – ZDARMA ke každému akreditovanému kurzu!
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.

Diskuze – Lekce 10 - Vylepšení kontaktního formuláře v PHP

Zpět

Upozorňujeme, že diskuze pod našimi online kurzy jsou nemoderované a primárně slouží k získávání zpětné vazby pro budoucí vylepšení kurzů. Pro studenty našich rekvalifikačních kurzů nabízíme možnost přímého kontaktu s lektory a studijním referentem pro osobní konzultace a podporu v rámci jejich studia. Toto je exkluzivní služba, která zajišťuje kvalitní a cílenou pomoc v případě jakýchkoli dotazů nebo projektů.

Komentáře
Avatar
Jan Jedlička:3.6.2018 19:53

ahoj, proc pisi htmlspecialchars v horni casti nad formularem ?.myslim tuto cast: if ($hlaska) echo('<p>' . htmlspecialchar­s($hlaska) . '</p>'); chapu ze to ma zmenit spicate zavorky html kodu na neskodny text, ale pritom tuto promennou nemuze nejak zvenci ovlivnit. jsem zacatecnik, tak se omlouvam za tak hloupou otazku :-)

 
Odpovědět
3.6.2018 19:53
Avatar
Jimmy Jack
Člen
Avatar
Jimmy Jack:18.6.2018 10:22

Ahoj, předem moc díky za vaší práci. Naprosto pecková záležitost! A teď k dotazu, v odstavci Přesměrování se řaší, aby formulář po odeslání nezůstal vyplněný. Co by bylo špatně na následujícím kódu namísto přesměrování? Nebude to naopak rychlejší a méně náročné? Díky!

<?php
    $hlaska = '';
    $jmeno = '';
    $email = '';
    $zprava = '';
    if ($_POST) { // V poli _POST něco je, odeslal se formulář
            if (isset($_POST['jmeno']) && $_POST['jmeno'] && isset($_POST['email']) &&                  $_POST['email'] &&
            isset($_POST['zprava']) && $_POST['zprava'] && isset($_POST['rok']) && $_POST['rok'] == date('Y')) {
                // Sem přijde odeslání emailu
                $hlaska = 'Formulář je správně vyplněný.';
                $jmeno = '';
                $email = '';
                $zprava = '';
            }
            else {
                $hlaska = 'Formulář není správně vyplněný!';
                $jmeno = (isset($_POST['jmeno'])) ? $_POST['jmeno'] : '';
                $email = (isset($_POST['email'])) ? $_POST['email'] : '';
                $zprava = (isset($_POST['zprava'])) ? $_POST['zprava'] : '';
            }
    }
?>
 
Odpovědět
18.6.2018 10:22
Avatar
T XXX
Člen
Avatar
T XXX:21.6.2018 10:50

Aké parametre môže mať ešte funkcia: header('Location: example.php');
Čo môže byť ešte namiesto Location a kde sa to využíva ?
Na čo všetko presne je táto funkcia vlastne je (okrem presmerovania na inú stránku) ?

 
Odpovědět
21.6.2018 10:50
Avatar
Matěj Bína
Člen
Avatar
Odpovídá na Jimmy Jack
Matěj Bína:16.2.2019 9:10

Myslím, že tohle řeší jen předvyplněnost formuláře. $_POST zůstane vyplněné a F5 jeho obsah odešle. Možná by to vyřešilo unset($_POST)? Nevím. Každopádně Location: je zajímavý způsob, jak použít POST a GET zároveň.

 
Odpovědět
16.2.2019 9:10
Avatar
Lukáš Kapusta:5.11.2019 12:24

Je to tady pěkný :-)

 
Odpovědět
5.11.2019 12:24
Avatar
Miloš Zeman
Člen
Avatar
Miloš Zeman:21.4.2020 15:43

nebyl by popelníček ?

 
Odpovědět
21.4.2020 15:43
Avatar
Lukáš Ondraschek:1.5.2020 13:49

Ahoj, díky za pěkné stránky.
Dá se nějakým způsobem docílit toho, aby se stránka po odeslání dat z formuláře objevila v prohlížeči na stejném místě?
Pokud mám emailový formulář uprostřed uprostřed delší html stránky, po stisknutí tlačítka odeslat se stránka v prohlížeči objeví na začátku, tj. pro uživatele zcela na jiném místě než kde vyplnil formulář. Takže pokud mám hlášky o stavu emailu (odesláno, neodesláno - zkontrolujte vyplnění, apod.) umístěny u formuláře, uživatel je neuvidí...

 
Odpovědět
1.5.2020 13:49
Avatar
Odpovídá na Lukáš Ondraschek
Richard Okoličany:8.6.2020 12:36

Dá sa pomocou presmerovanie stránok.. Poprípade musíš dať javascript.. Ale keď sa učíš, len tak na všetko prídeš.. Všetko bude neskôr rozpisane

 
Odpovědět
8.6.2020 12:36
Avatar
Dušan Kovářík:27.6.2021 20:13

Pecka! Formulář mi na hostingu funguje bezvadně a zatím všemu rozumím. Díky za lekci!

 
Odpovědět
27.6.2021 20:13
Avatar
Vojtěch Koukal:6.9.2021 20:48

Bylo by super kdyby na konci každé lekce byl screenshot celého kódu... Kdo se v tom pak má vyznat?

 
Odpovědět
6.9.2021 20:48
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 10 zpráv z 149.