<?
// ------------------------------------------
// -- Script pro odeslání formuláře mailem --
//
// ------------------------------------------
/*
Povinné parametry:
$komu ... adresa příjemce
$email ... adresa odesílatele
Nepovinné parametry:
$predmet ... předmět mailu
$nexturl ... stránka s poděkováním
$backurl ... adresa stránky pro návrat
$html ... Y/N - odeslat ve formátu HTML
$soubor ... příloha mailu (pouze pro HTML formát)
$@? ... povinné položky pro odeslání v mailu začínají znakem @
$#? ... nepovinné položky pro odeslání v mailu začínají znakem #
*/
require("/3w/mysteria.cz/h/heroes3/inc/functions.php");
if ($html == "Y") include("../inc/class.html.mime.mail.inc");
if(count($_POST) > 0) {
// kontrola, zda jsou vyplněny povinné parametry
if (!$komu) $errlist .= ", Komu";
if (!$email) $errlist .= ", Email";
while (list($promenna, $hodnota) = each($_POST)) {
if ((substr($promenna, 0, 1) == "@") && ($hodnota == ""))
$errlist .= ", " . substr($promenna, 1);
}
// pokud nejsou vyplněny povinné parametry
if ($errlist) {
echo "<font size=\"6\"><b>Chyba!</b></font>";
echo "<p>Nejsou vyplněny všechny požadované údaje:<br>";
echo "<b>".substr($errlist, 1)."</b></p>";
echo "<p><a href='javascript:history.go(-1)'>Zpět</a></p>";
exit; // ukončíme zpracování scriptu
}
if ($html == "Y") {
// pokud má být mail odeslán ve formátu HTML
$telo = "<table>";
$telo .= "<tr><td><font color=\"Red\"><b>Email:</b></font></td><td> </td><td>$email</td></tr>";
reset($_POST);
while (list($promenna, $hodnota) = each($_POST)) {
// nahradíme konce řádků tagem <br>
$hodnota = str_replace(chr(13) . chr(10), "<br>", $hodnota);
$hodnota = str_replace(chr(10) . chr(13), "<br>", $hodnota);
$hodnota = str_replace(chr(13), "<br>", $hodnota);
$hodnota = str_replace(chr(10), "<br>", $hodnota);
// pokud parametr začíná na # nebo *, tak zapsat hodnotu do textu mailu
if (((substr($promenna, 0, 1) == "@") || (substr($promenna, 0, 1) == "#")) && ($hodnota != ""))
{ $telo .= "<tr><td valign=\"top\"><b>".substr($promenna, 1).":</b></td><td> </td><td>$hodnota</td></tr>"; }
}
$telo .= "</table>";
$telo .= "<p><hr></p>";
$telo .= "<p><b>Uživatelův browser:</b> $HTTP_USER_AGENT<br>";
$telo .= "<b>IP adresa, ze které přišel požadavek:</b> $REMOTE_ADDR</p>";
// odešleme mail ve formátu HTML
$mail = new html_mime_mail("X-Mailer: Html Mime Mail Class");
// vložení přílohy, pokud je zadána
if ($soubor_name) {
if (copy ($soubor, "../temp/$soubor_name")) {
$priloha = $mail->get_file("../temp/$soubor_name");
$mail->add_attachment($priloha, $soubor_name, $soubor_type);
unlink("../temp/$soubor_name");
}
}
// odešleme mail ve formátu HTML
$mail->add_html(ToISO($telo), "");
$mail->set_charset('iso-8859-2', TRUE);
$mail->build_message();
$mail->send($komu, $komu, $email, $email, ToISO($predmet), "Return-Path: $email");
$sendok = true;
// odeslat potvrzení
usleep(500);
$mail->send($email, $email, $email, $email, ToISO("Potvrzení - vyplnění formuláře"), "Return-Path: $email");
} else {
// pokud má být mail odeslán ve formátu prostého textu
$telo = "Email: $email\n";
// projdeme všechny přijaté parametry
reset($_POST);
while (list($promenna, $hodnota) = each($_POST)) {
// nahradíme konce řádků znakem \n
$hodnota = str_replace(chr(13) . chr(10), "\n", $hodnota);
$hodnota = str_replace(chr(10) . chr(13), "\n", $hodnota);
$hodnota = str_replace(chr(13), "\n", $hodnota);
$hodnota = str_replace(chr(10), "\n", $hodnota);
// pokud parametr začíná na # nebo *, tak zapsat hodnotu do textu mailu
if (((substr($promenna, 0, 1) == "@") || (substr($promenna, 0, 1) == "#")) && ($hodnota != ""))
{ $telo .= substr($promenna, 1) . ": $hodnota\n"; }
}
// necháme si poslat označení uživatelova browsu a jeho IP
$telo .= "\nUživatelův browser: $HTTP_USER_AGENT\n";
$telo .= "IP adresa, ze které přišel požadavek: $REMOTE_ADDR\n";
// odešleme mail funkcí mail()
$sendok = mail($komu, ToISO($predmet), ToISO($telo), "From: $email\nReturn-Path: $email");
// odeslat potvrzení
usleep(500);
mail($email, ToISO("Potvrzení - vyplnění formuláře"), ToISO($telo), "From: $email\nReturn-Path: $email");
}
// pokud byl mail odeslán v pořádku
if ($sendok) {
// přesměrujeme mail na stránku s poděkováním
if ($nexturl != "")
{
echo "<script language=\"JavaScript1.2\"><!--\n";
echo "self.location=\"$nexturl\";\n";
echo "// -->\n";
echo "</script>";
} else {
echo "<font size=\"6\"><b>Děkujeme!</b></font>";
echo "<p>Vaše zpráva byla v pořádku odeslána.</p>";
if ($backurl != "")
{ echo "<p><a href='javascript:history.go(-1)'>Zpět</a></p>"; }
else
{ echo "<p><a href='$s_backurl'>Návrat</a></p>"; }
}
} else {
// pokud nebyl mail odeslán
echo "<font size=\"6\"><b>Chyba!</b></font>";
echo "<p>Některá ze služeb selhala. Zkuste to prosím později.<br>";
echo "V případě potíží kontaktujte: <a href='mailto:lola92@seznam.cz'>administrátora</a></p>";
echo "<p><a href='javascript:history.go(-1)'>Zpět</a></p>";
}
} else {
// pokud byl script spuštěn bez parametrů
echo "<font size=\"6\"><b>Chyba!</b></font>";
echo "<p>Toto je skript, kterým se odesílají zprávy z formulářů.<br>";
echo "Nešahat! Být moje :-)</p>";
echo "<p>V případě potíží kontaktujte: <a href='mailto:lola92@seznam.cz'>administrátora</a></p>";
echo "<p><a href='javascript:history.go(-1)'>Zpět</a></p>";
}
?>