Autor Zpráva
Mufna
Profil
Zdravím Vás. Mám takovýto skript, který zpracuje vstupní formulář s jedním políčkem "e-mail" a zároveň by měl poslat na vložený e-mail obratem automatickou odpověď. Skript v zásadě funguje, ale má to mouchy. První zpracování funguje bez problému, ale u automatické odpovědi se správně odešle $MAIL_ADDRESS + $MAIL_SUBJECT + $MAIL_FROM , ale $MAIL_BODY se nevím proč přebírá z toho prvního zpracování. Pouze jednou (nevím ani jak) se mi podařilo, že i $MAIL_BODY u automatické odpovědi bylo OK. Nechal jsem v tom skriptu i znaky konce řádků tak jak to zhruba mám, kdyby třeba byla i tam nějaká syntaktická chyba nebo prostě jiná chyba (PHP žádnou nehlásí). Funkci send_mail() sem nekopíruju, myslím, že tam chyba nebude.

<?php
  if (isset($_POST["process"])) {
    if ($_POST["process"]=="1") {
       $BACK_LINK = "";
       $MAIL_ADDRESS = "Adresa 1";
       $MAIL_SUBJECT = "Text 1";
       $MAIL_FROM = "From 1";
       $MAIL_BODY = "Nový zájemce atd .\n\n".
                    "Vyplněný kontaktní e-mail: ". $_POST["email"] ."\n";
                  
        if (send_mail($MAIL_ADDRESS,$MAIL_SUBJECT,$MAIL_BODY,$MAIL_FROM,'utf-8')) {
           echo '<div>Formulář s Vaší e-mailovou adresou byl úspěšně odeslán</div>';

           // * Sending automatic answer with appendix *

           $MAIL_ADDRESS = $_POST["email"];
           $MAIL_SUBJECT = "Text 2 - Odpověď na atd";
           $MAIL_FROM = "From 2";
           $MAIL_BODY = "Jiný text .\n\n".
                                    "Pokračování jiného textu .\n\n\n".
                                    "S pozdravem .\n\n".
                                    "Ten a ten .\n".
                         
           send_mail($MAIL_ADDRESS,$MAIL_SUBJECT,$MAIL_BODY,$MAIL_FROM,'utf-8');

       }
    }
  }
TomášK
Profil
Na řádku
"Ten a ten .\n".
má být středník místo tečky.
"Ten a ten .\n";
Mufna
Profil
Díky, ale bohužel tohle můj hlavní problém neřeší (to jsem udělal chybu při kopírování kódu sem na fórum)
TomášK
Profil
Ta tečka způsobí přesně to chování, které popisuješ (až na to, že by to nemohlo projít ani jednou), opravdu ji tam nemáš? Když jsem ji nahradil středníkem a send_mail výpisem MAIL_BODY, tak se mi chovalo dle očekávání, jiná chyba tam imho není.
Mufna
Profil
Ano, tečky byly problém. Všechny jsem odstranil a je to OK.

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: