Autor Zpráva
Tomasz
Profil *
dobrý den, zdravím

mohl bych mít ještě jeden problem? Mám na stránkach když vytvářím rezervaci možnost výběru místnosti, typ akce a čas akce. Veškeré informace po odeslání se objeví v emailu. Jenže mám problém s místnosti a časem akce. Tady mi příjde do emailu pouze číslo (které je v pořadí dle výběru shora).
text který mi příjde teď:
Datum rezervace: 15. 03. 2024
Jméno klienta: test
E-mail na klienta: test@gmail.cz
Tel. na klienta: 123456789
Předpokládaný počet osob: 100
Místnost: 2
Typ akce: Veřejná akce
Čas akce: 3
Název akce: test

text zprávy 

když se podívám na kody, našel jsem toto:
$textMail="Datum rezervace: ".date("d. m. Y", strtotime($_POST["date"])).
                " <br> Jméno klienta: ".htmlspecialchars($_POST["user_name"]).
                " <br> E-mail na klienta: ".htmlspecialchars($_POST["user_email"]).
                " <br> Tel. na klienta: ".htmlspecialchars($_POST["user_tel"]).
                " <br> Předpokládaný počet osob: " . htmlspecialchars($_POST["quantity"]) .
                " <br> Místnost: " . htmlspecialchars($_POST["room"]) .
                " <br> Typ akce: " . htmlspecialchars($_POST["open"]=="v" ? "Veřejná akce" : ($_POST["open"]=="s" ? "Soukromá akce" : "?")).
                " <br> Čas akce: " . htmlspecialchars($_POST["cas"]) . 
                " <br> Název akce: <b>" . htmlspecialchars($_POST["title"])."</b>".
                " <br><br> ".htmlspecialchars($_POST["user_text"]);

pokud jsem do řádku "Místnost" napsal stejné to, co do řádku "Typ akce" tak to vypadá takto:
$textMail="Datum rezervace: ".date("d. m. Y", strtotime($_POST["date"])).
                " <br> Jméno klienta: ".htmlspecialchars($_POST["user_name"]).
                " <br> E-mail na klienta: ".htmlspecialchars($_POST["user_email"]).
                " <br> Tel. na klienta: ".htmlspecialchars($_POST["user_tel"]).
                " <br> Předpokládaný počet osob: " . htmlspecialchars($_POST["quantity"]) .
                " <br> Místnost: " . htmlspecialchars($_POST["room"]=="1" ? "Všechny prostory" : ($_POST["room"]=="2" ? "Velký sál, jeviště" : $_POST["room"]=="3" ? "Horní bar, kuchyň" : $_POST["room"]=="4" ? "Dolní bar" : $_POST["room"]=="5" ? "Prostory galerie" : "?")) .
                " <br> Typ akce: " . htmlspecialchars($_POST["open"]=="v" ? "Veřejná akce" : ($_POST["open"]=="s" ? "Soukromá akce" : "?")).
                " <br> Čas akce: " . htmlspecialchars($_POST["cas"]=="0" ? "celý den" : ($_POST["cas"]=="1" ? "dopoledne" : $_POST["cas"]=="2" ? "odpoledne" : $_POST["cas"]=="3" ? "Navečer" : $_POST["cas"]=="4" ? "Dopoledne + Odpoledne" : $_POST["cas"]=="5" ? "Odpoledne + Navečer" : "?")) . 
                " <br> Název akce: <b>" . htmlspecialchars($_POST["title"])."</b>".
                " <br><br> ".htmlspecialchars($_POST["user_text"]);

teď mi to do mejlu chodí informace i s názvama, ale ono si to vybírá náhodně. Když si np rezervuji "Dolní bar a celý den", tak do mejlu mi příjde "všechny prostory a odpoledne". Takže já vidím názvy místnosti a času akce, ale nesouhlasí mi to, co je zadáno v rezervaci.
Na druhou stranu si ještě vybírám mezi soukromou a veřejnou akcí, a tady to je vždy správně, vždy do mejlu příjde to, co si zarezervuji.

dělám něco špatně? bude problém ještě někde jinde?
děkuji za pomoc
anonym_
Profil *
Tomasz:
Chybi ti tam asi zavorky. Nemám to na telefonu jak vyzkoušet.

podmínka ? true : (podmínka ? true : (podmínka ? true : (podmínka ? true : false))).

Nicméně tohle je pěkná čuněčina a minimálně pro tvoji přehlednost bych se vyprdnul na ternarni operátor a vytáhnul si to někam bokem do klasické podmínky, kterou si rozepises na víc řádku a vyznas se v ni.
Keeehi
Profil
Tomasz:
Nejednodušší bude mít pole, definované někde na začátku.
$preklady_casu = [
    0 => "celý den",
    1 => "dopoledne",
    ...
];

No a pak při generování textu emailu použít
$preklady_casu[$_POST["cas"]]
Kcko
Profil
Keeehi:
Proměnné s podtržítky fakt používáš? ;-)
Keeehi
Profil
Kcko:
Běžně ne. A taky ne v češtině. Tady na ukázku na tom zase tak nesejde.
Tomasz
Profil *
anonym:
Chybi ti tam asi zavorky...
děkuji pomohlo to
ano vím že je to čunačina, ale já to neumím opravit, se v tom nevyznám :-) dokážu kopirovat něco podle toho co už je vytvořené....ale víc bohužel ee :-(
každopádně děkuji za super radu a rychlou pomoc

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

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

0