Autor Zpráva
php email
Profil *
Dobrý den,

potřebuji poradit - mám formulář, kde návštěvník vyplní okres a podle toho, který okres zvolí, se pošle email buď

1) do schranka1@domena.cz nebo
2) do schranka2@domena.cz + na telefon@vodafonemail.cz

(jak to funguje, určitě poznáte sami z kódu)

Problém:

když někdo zvolí okres Praha, měl by nastat pouze případ 1, čili email by se měl poslat pouze na schranka1@domena.cz. Jenže ve skutečnosti když vyplním okres Praha, email se pošle na schranka1@domena.cz a i na telefon@vodafonemail.cz.

Nechápu proč, závorky {} jasně oddělují jednotlivé činnosti... Neví někdo, jak to udělat, aby to fungovalo správně, čili aby nastal buď případ 1 nebo případ 2?

<?php
if (($_POST['okres']=="Praha") OR ($_POST['okres']=="Most") OR ($_POST['okres']=="Teplice") OR ($_POST['okres']=="Ústí nad Labem") OR ($_POST['okres']=="Litoměřice") OR ($_POST['okres']=="Děčín") OR ($_POST['okres']=="Opava") OR ($_POST['okres']=="Bruntál") OR ($_POST['okres']=="Ostrava-město") OR ($_POST['okres']=="Brno-město") OR ($_POST['okres']=="Brno-venkov")) {
  define("EMAIL", "schranka1@domena.cz");
  $PREDMET = $_POST['okres']." - ".$_POST['cislo'];
  $HLAVICKA  = "From: ".$_POST['jmeno']." ".$_POST['prijmeni']." <".$_POST['email'].">\n";
  $HLAVICKA .= "X-Priority: 4\n";
  $HLAVICKA .= "Content-Type: text/html; charset=utf-8\n";
  $ZPRAVA = "<b>Jméno: ".$_POST['jmeno']." ".$_POST['prijmeni']."<br /><br />\n\n";
  $ZPRAVA .= "EMail: ".$_POST['email']."<br /></b>\n";
  $ZPRAVA .= "Okres: ".$_POST['okres']."<br /><br />\n\n";
  $ZPRAVA .= "Telefon: ".$_POST['cislo']."<br /><br />\n\n";
  $ZPRAVA .= "Ze stránky: ".$_POST['puvod']."<br /><br />\n\n";
  # Odeslání
  mail(EMAIL, $PREDMET, $ZPRAVA, $HLAVICKA);
  echo "Zpráva se právě odesílá, za okamžik budete přesměrováni.<br />";
} else {
  define("EMAIL", "schranka2@domena.cz");
  $PREDMET = $_POST['okres']." - ".$_POST['cislo'];
  $HLAVICKA = "From: ".$_POST['jmeno']." ".$_POST['prijmeni']." <".$_POST['email'].">\n";
  $HLAVICKA .= "X-Priority: 4\n";
  $HLAVICKA .= "Content-Type: text/html; charset=utf-8\n";
  $ZPRAVA = "<b>Jméno: ".$_POST['jmeno']." ".$_POST['prijmeni']."</b><br /><br />\n\n";
  $ZPRAVA .= "Email: ".$_POST['email']."<br /><br />\n";
  $ZPRAVA .= "Okres: ".$_POST['okres']."<br /><br />\n\n";
  $ZPRAVA .= "Telefon: ".$_POST['cislo']."<br /><br />\n\n";
  $ZPRAVA .= "Ze stránky: ".$_POST['puvod']."<br /><br />\n\n";
  # Odeslání
  mail(EMAIL, $PREDMET, $ZPRAVA, $HLAVICKA);
  define("EMAIL2", "telefon@vodafonemail.cz");
  $PREDMET2 = "Tel: ".$_POST['cislo'].";";
  $HLAVICKA2  = "From: "."zajemce\n";
  $HLAVICKA2 .= "X-Priority: 4\n";
  $HLAVICKA2 .= "Content-Type: text/html; charset=utf-8\n";
  $ZPRAVA2 = "<b>Jméno: ".$_POST['jmeno']." ".$_POST['prijmeni'].";<br /><br />\n\n";
  $ZPRAVA2 .= "Okres: ".$_POST['okres']."<br /><br />\n\n";
  # Odeslání
  mail(EMAIL2, $PREDMET2, $ZPRAVA2, $HLAVICKA2);
  echo "Zpráva se právě odesílá, za okamžik budete přesměrováni.<br />";
}
?>


Děkuji předem za rady
AM_
Profil
Obojí skutečně nastat nemůže, problém je zřejmě jinde. Trochu nechápu, proč cpeš mail do konstanty, tohle patří normálně do proměnných. Zkus si to trochu zdebugovat (vypisuj si různě echem důležité proměnné, abys viděl, kudy a jak program prochází).
kajaman
Profil
podle manuálu mají být hlavičky odděleny "\r\n" ... možná Ti to nějak dělá problém,
zkusil bych vynechat ty extra hlavičky a kouknul bych, co to dělá
bohyn
Profil
kajaman
sendmail to umi opravit a nevysvetluje to odeslani na telefon.

php email
nemas chybu treba ve velikosti pismen? "praha" != "Praha"
kajaman
Profil
bohyn"praha" != "Praha"

njn, jenže jemu se to odešle na schránka1@ a na telefon@ ... každá adresa je v jiné části podmínky if...else
nightfish
Profil
kajaman
jenže jemu se to odešle na schránka1@ a na telefon@
a nebo to php email blbě napsal
... uvedený kód prostě nemůže provést obě větve if-else
php email
Profil *
a není možné, že po if nesmí být mezera?
MaX
Profil *
Prosím o radu, když mi někdo vyplní Háčky a čárky jak to ošetřím, aby mi do emailu přišlo přezný znění s háčkama a čárka....v mém stádiu mi to nehlásí Š a Ž...děkuji za radu
Smokie
Profil
nejsem si jistý jestli je to problém tohohle algoritmu ale víš proč se konstatny nazávají KONSTANTY? ano protože se při běhu programu nemění.
nightfish
Profil
Smokie
ale víš proč se konstatny nazávají KONSTANTY? ano protože se při běhu programu nemění.
a ony se tady někde mění?

MaX
viz http://diskuse.jakpsatweb.cz/index.php?action=vthread&forum=9&topic=2111#2
MaX
Profil *
Díky:)

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: