S účinností od 26. 3. jsme aktualizovali Zásady zpracování osobních údajů – doplnili jsme informace o monitorování telefonických hovorů se zájemci o studium. Ostatní části zůstávají beze změn.
NOVINKA - Online rekvalifikační kurz Python programátor. Oblíbená a studenty ověřená rekvalifikace - nyní i online.

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
Odpovídá na Jan Švanda
František Kreisinger:9.3.2018 11:15

option u selected ???

Odpovědět
9.3.2018 11:15
Začátečník v PHP, HTML i webovém programování vůbec.
Avatar
Odpovídá na Jan Švanda
František Kreisinger:9.3.2018 13:34

Napřed jsem v té úloze marně hledal nějaký SELECT, ale pak mi snad došlo, že "... kdyby tam něco takového bylo". Já bych to volitelné předvyplnění řešil asi následovně:

<?php
$Sel0="";
$Sel1="SELECTED";
$Sel2="";
$Sel3="";
$Sel4="SELECTED"
?>
.....

<SELECT name="Rok" with=20 size=5 MULTIPLE>
<OPTION value="0" <?= $Sel0 ?>>1950
<OPTION value="1" <?= $Sel1 ?>>1951
<OPTION value="2" <?= $Sel2 ?>>1952
<OPTION value="3" <?= $Sel3 ?>>1953
<OPTION value="4" <?= $Sel4 ?>>1954
</SELECT>
.....

Odpovědět
9.3.2018 13:34
Začátečník v PHP, HTML i webovém programování vůbec.
Avatar
Odpovídá na Moss
František Kreisinger:9.3.2018 15:01

Asi stejně by mělo fungovat:

...
$hlaska=(isset($_GET['us­pech']))? $_GET['uspech'] : "";
...
echo nl2br("Hláška: ".$hlaska."\n");

Je to o chloupek kratší :-).

Odpovědět
9.3.2018 15:01
Začátečník v PHP, HTML i webovém programování vůbec.
Avatar
Odpovídá na František Kreisinger
František Kreisinger:9.3.2018 15:37

Bože, vypadá to, že celý problém s odesíláním mailů i se jménem odesilatele v hlavičce byl jen v tom, že jsem při testování používal fiktivní adresu odesilatele sice formálně správnou, ale neexistující. S existující adresou odesilatele to funguje i s jeho jménem v hlavičce. Je ale otázkou proč předtím maily nedocházely a přitom SMTP nic nehlásil. Znamená to, že by je odmítl server příjemce (email.cz) ?

Odpovědět
9.3.2018 15:37
Začátečník v PHP, HTML i webovém programování vůbec.
Avatar
Odpovídá na František Kreisinger
František Kreisinger:9.3.2018 21:02

Je to stejně divné, protože jsem v té emailové schránce, do které jsem ty testovací emaily posílal, našel mezi došlými i jeden, který měl jako odesilatele uvedenu tu fiktivní neexistující adresu. Zjistil jsem pak ještě, že problém asi dělalo také to, když se odeslalo v hlavičce FROM: ale bez vyplněné adresy odesilatele (tedy jenom s <>).

Odpovědět
9.3.2018 21:02
Začátečník v PHP, HTML i webovém programování vůbec.
Avatar
Odpovídá na František Kreisinger
František Kreisinger:10.3.2018 16:03

Tak opravdu nevím, proč to předtím nefungovalo. Teď mi to funguje a emaily dochází i s neexistující adresou odesilatele. Už se ale bohužel ztrácím v tom, co všechno jsem mezitím změnil.

Odpovědět
10.3.2018 16:03
Začátečník v PHP, HTML i webovém programování vůbec.
Avatar
hrncal.junior:15.3.2018 10:33

Ahoj,
zeptám se na úplně základní věc. co když budu chtít formulář odeslat na více adres?
Pro emaily používám

$adresa = 'prvni@email.cz';
$adresa2 = 'druhy@email.cz';
$adresa3 =  . $_POST['email'];

a pro odeslání

$uspech = mb_send_mail($adresa,, $adresa2, $adresa3, $predmet, $textZpravy, $hlavicka);

A to mi samozřejmě nefunguje. Můžete mne prosím nasměrovat? Děkuji

 
Odpovědět
15.3.2018 10:33
Avatar
Odpovídá na hrncal.junior
Michal Šmahel:15.3.2018 11:24

Ahoj, tohle je celkem běžná věc. Tvé řešení je zajímavé, ale má určitý problém. Když se podíváš do dokumentace, zjistíš, že předáváš funkci jiné parametry, než skutečně přijímá.

Abych se vrátil k řešení. Pokud chceš zapsat více příjemců, uložíš je do jedné proměnné oddělené čárkou.

$prijemci = "test@example.com, user@domain.com";
Odpovědět
15.3.2018 11:24
Nejdůležitější je motivace, ovšem musí být doprovázena činy.
Avatar
Odpovídá na Michal Šmahel
hrncal.junior:15.3.2018 16:43

Jak jednoduché. Akorád jak tam dostanu email odesílatele? Jednoduché připojení

. $_POST["email"]

mi nefunguje

 
Odpovědět
15.3.2018 16:43
Avatar
Jan Lupčík
Tvůrce
Avatar
Odpovídá na hrncal.junior
Jan Lupčík:15.3.2018 16:59

Ahoj,
takto se určitě nespojují řetězce. Před tou tečkou něco musí být. :)
Nebo lze použít zkrácený výraz .= ... akorát nevidím, co bys chtěl spojovat. Možná takhle?

$prijemci = "test@example.com, user@domain.com, ";
$prijemci .= $_POST["email"];
Odpovědět
15.3.2018 16:59
TruckersMP vývojář
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.