ContactMe (MailForm)
Napísané: So Máj 27, 2006 3:28 pm
Ako sa prosim vola snippet, ktory si pouzil, _rasel^ na svojom webe ako Mail Form? Ak by sa dalo, hod aj zdrojak. Diky moc.
česko-slovenské fórum pre užívateľov s podporou zdarma
https://forum.etomite.sk/
Kód: Vybrať všetko
/* ContactMe 0.1 snippet for Etomite by Vassili Slessarenko */
/* This snippet generates a very simple form, which can be used for contact purposes within a website.
It first outputs the form, then it checks the e-mail address that the sender has given and then
returns a "message-has-been-sent" message.
Do make sure the page is non-Cacheable! */
/* Configuration Section (Feel free to change these as needed). */
## This is probably the most important part of the script... It contains the address to which the e-mails will be
## so make sure the address is correct. - sem zadáš svůj mail
$address_to = 'info@tvojedomena.cz';
## These 3 change what is at first displayed in the form fields (once clicked on these disappear):
$initial_name_string = '';
$initial_email_string = '';
$initial_subject_string = '';
## These will determine the size of the fields and should be pretty self-explanatory. Tento blok určuje velikost políček formuláře
$name_width = '50';
$email_width = '50';
$subject_width = '50';
$text_cols = '60';
$text_rows = '8';
# $subject_prepend variable can be used to supply a string which will always come before the user written subject.
# This means you can filter the e-mails by subject and put them into a separate folder. Přepiš si subjekt!!
$subject_prepend = 'SFERA BUBENIKU';
## $email_sent_msg - This sets the message that the sender sees when the e-mail has been successfully sent.
$email_sent_msg = '<h2>Děkujeme Vám za Vaši zprávu!</h2>'."\n";
$email_sent_msg .= "<p>Vaše zpráva byla úspěšně odeslána. </p>"."\n";
/* ------------------------------------------------------*/
/* Don't mess with this unless you know what ur doing!!! */
/* This is the actual code... */
/* ------------------------------------------------------*/
$mail_form = '';
$mail_form .= '<form action="" method="post" id="contact_me">'." \n ";
$mail_form .= '<p><label for="name">Vaše jméno:<br />'." \n ";
$mail_form .= '<input type="text" name="name" id="name"';
if (isset($_POST['name'])) {
$mail_form .= " value=\"".$_POST['name']."\"";
}
else {
$mail_form .= ' value="'.$initial_name_string.'"';
}
if (!isset($_POST['name'])) {
$mail_form .= " onclick=\"document.forms[0].name.value=''\" ";
}
$mail_form .= 'size="'.$name_width.'" /></label>'." \n";
$mail_form .= '<label for="email">Váš e-mail:<br />'." \n";
$mail_form .= '<input type="text" name="email" id="email" ';
if (isset($_POST['email'])) {
$mail_form .= "value=\"".$_POST['email']."\" ";
} else {
$mail_form .= 'value="'.$initial_email_string.'" ';
}
if (!isset($_POST['email'])) {
$mail_form .= "onclick=\"document.forms[0].email.value=''\" ";
}
$mail_form .= 'size="'.$email_width.'" /></label>'."\n";
$mail_form .= '<label for="subject">Předmět:<br />'."\n";
$mail_form .= '<input type="text" name="subject" id="subject" ';
if (isset($_POST['subject'])) {
$mail_form .= "value=\"".$_POST['subject']."\" ";
} else {
$mail_form .= 'value="'.$initial_subject_string.'" ';
}
if (!isset($_POST['subject'])) {
$mail_form .= "onclick=\"document.forms[0].subject.value=''\" ";
}
$mail_form .= 'size="'.$subject_width.'" /></label>'."\n";
$mail_form .= '<label for="content_text">Vaše zpráva:<br />'."\n";
$mail_form .= '<textarea name="content_text" id="content_text" rows="'.$text_rows.'" cols="'.$text_cols.'">';
if (isset ($_POST['content_text'])) {
$mail_form .= $_POST['content_text'];
}
$mail_form .= '</textarea></label></p>'."\n";
$mail_form .= '<p><input type="hidden" name="send_email" value="sent" />'."\n";
$mail_form .= '<input type="submit" value="odeslat" /><input type="Reset" value="vymazat" /></p>'."\n";
$mail_form .= '</form>'."\n";
$mail_form .= '<p>Na tlačítko "odeslat" stačí kliknout jen jedenkrát.... Děkujeme.</p>'."\n";
if (isset($_POST['send_email']) && $_POST['send_email'] == 'sent') {
/* check e-mail variable, output errors, then send the e-mail + thank you message */
/* take a given email address and split it into the
username and domain. */
list($userName, $mailDomain) = split("@", $_POST['email']);
if (checkdnsrr($mailDomain, "MX")) {
// this is a valid email domain! -> send the mail and say thanks!
$name = $_POST['name'];
$email = $_POST['email'];
$subject = "$subject_prepend".$_POST['subject'];
$content_text = $_POST['content_text'];
$message = stripslashes($content_text);
$headers = "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text; charset=windows-1250\r\n";
$headers .= "From: $name <$email>\r\n";
$headers .= "X-Priority: 1\r\n";
$headers .= "X-Mailer: Etomite PHP mailer\r\n";
mail ($address_to, $subject, $message, $headers);
$output = '';
$output .= $email_sent_msg;
return $output;
} else {
/* return an error and add the form */
$output = '';
$output .= '<p class="error">Promiňte, zadal jste chybný mail. Opravte jej a zprávu znovu odešlete. Děkujeme.</p>';
$output .= $mail_form;
return $output;
}
} else {
/* return an html e-mail form */
$output = '';
$output .= $mail_form;
return $output;
}
Kód: Vybrať všetko
/*Adresa prijimateľa*/
$address_to = 'email@email.sk';
/*Predpona predmetu*/
$subject_prepend = 'Etomite - ';
/*Text pred*/
$your_name = 'Vaše meno:';
$your_email = 'Váš e-mail:';
$your_subject = 'Predmet:';
$your_email_content = 'Obsah e-mailu:';
/*Text zobrazeny v poliach, ktore po kliknuti zmyznu*/
$initial_name_string = '';
$initial_email_string = '';
$initial_subject_string = '';
/*Text tlačidiel*/
$button_send = 'Poslať e-mail';
$button_reset = 'Vymazať';
$info_send = '<p>Prosím neklikajte na "Poslať e-mail" viac ako jeden-krát.</p>';
$email_error = '<p class="error"><b>Please Insert a Valid E-Mail, so that we could e-mail you back.</b></p>';
$email_charset = 'iso-8859-1';
/*Rozmery poli*/
$name_width = '40';
$email_width = '40';
$subject_width = '40';
$text_cols = '40';
$text_rows = '5';
/*Sprava po odoslani e-mailu*/
$email_sent_msg = '<b>Ďakujem za Váš e-mail!</b>'."\n";
$email_sent_msg .= "<p>Váš e-mail bol úspešne odoslaný! Odpoviem naňho čo najskôr ako bude možné.</p>"."\n";
/* ------------------------------------------------------*/
/* Don't mess with this unless you know what ur doing!!! */
/* This is the actual code... */
/* ------------------------------------------------------*/
$mail_form = '';
$mail_form .= '<form action="" method="post" id="contact_me">'." \n ";
$mail_form .= '<table style="margin: 0px;"><tr><td><label for="name">'.$your_name.'</label></td><td>'." \n ";
$mail_form .= '<input type="text" name="name" id="name"';
if (isset($_POST['name'])) {
$mail_form .= " value=\"".$_POST['name']."\"";
}
else {
$mail_form .= ' value="'.$initial_name_string.'"';
}
if (!isset($_POST['name'])) {
$mail_form .= " onclick=\"document.forms[0].name.value=''\" ";
}
$mail_form .= 'size="'.$name_width.'" /></td></tr>'." \n";
$mail_form .= '<tr><td><label for="email">'.$your_email.'</label></td><td>'." \n";
$mail_form .= '<input type="text" name="email" id="email" ';
if (isset($_POST['email'])) {
$mail_form .= "value=\"".$_POST['email']."\" ";
} else {
$mail_form .= 'value="'.$initial_email_string.'" ';
}
if (!isset($_POST['email'])) {
$mail_form .= "onclick=\"document.forms[0].email.value=''\" ";
}
$mail_form .= 'size="'.$email_width.'" /></td></tr>'."\n";
$mail_form .= '<tr><td><label for="subject">'.$your_subject.'</label></td><td>'."\n";
$mail_form .= '<input type="text" name="subject" id="subject" ';
if (isset($_POST['subject'])) {
$mail_form .= "value=\"".$_POST['subject']."\" ";
} else {
$mail_form .= 'value="'.$initial_subject_string.'" ';
}
if (!isset($_POST['subject'])) {
$mail_form .= "onclick=\"document.forms[0].subject.value=''\" ";
}
$mail_form .= 'size="'.$subject_width.'" /></td></tr>'."\n";
$mail_form .= '<tr><td><label for="content_text">'.$your_email_content.'</label></td><td>'."\n";
$mail_form .= '<textarea name="content_text" id="content_text" rows="'.$text_rows.'" cols="'.$text_cols.'">';
if (isset ($_POST['content_text'])) {
$mail_form .= $_POST['content_text'];
}
$mail_form .= '</textarea></td></tr>'."\n";
$mail_form .= '<tr><td> </td><td><input type="hidden" name="send_email" value="sent" />'."\n";
$mail_form .= '<input type="submit" value="'.$button_send.'" /> <input type="reset" value="'.$button_reset.'" /></td></tr></table>'."\n";
$mail_form .= '</form>'."\n";
$mail_form .= $info_send;
if (isset($_POST['send_email']) && $_POST['send_email'] == 'sent') {
/* check e-mail variable, output errors, then send the e-mail + thank you message */
/* take a given email address and split it into the
username and domain. */
list($userName, $mailDomain) = split("@", $_POST['email']);
if (checkdnsrr($mailDomain, "MX")) {
// this is a valid email domain! -> send the mail and say thanks!
$name = $_POST['name'];
$email = $_POST['email'];
$subject = "$subject_prepend".$_POST['subject'];
$content_text = $_POST['content_text'];
$message = stripslashes($content_text);
$headers = "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text; charset='.$email_charset.'\r\n";
$headers .= "From: $name <$email>\r\n";
$headers .= "X-Priority: 1\r\n";
$headers .= "X-Mailer: Etomite PHP mailer\r\n";
mail ($address_to, $subject, $message, $headers);
$output = '';
$output .= $email_sent_msg;
return $output;
} else {
/* return an error and add the form */
$output = '';
$output .= $email_error;
$output .= $mail_form;
return $output;
}
} else {
/* return an html e-mail form */
$output = '';
$output .= $mail_form;
return $output;
}
Kód: Vybrať všetko
http://www.rasel.atknet.sk/e-mail
ano, přesně tak. zkoušel jsem to s koncovkou .info a vyhazuje to chybu_rasel^ napísal:Myslíš: Že ak niekto do poľa mailu odosielateľa nezadá mail s českou koncovkou, tak mail neodošle a vyhodí chybovú hlášku?
Kód: Vybrať všetko
Prosím vložte platnou e-mailovou adresu, abych Vám mohl odpovědět.
Kód: Vybrať všetko
$message = base64_encode($message);
$headers = "MIME-Version: 1.0\n";
$headers .= "Content-Type: text/plain; charset=\"UTF-8\"\n";
$headers .= "Content-Transfer-Encoding: base64\n";
$headers .= "From: meno <moj@mail.sk>\n";
$headers .= "Reply-To: meno <moj@mail.sk>\n";
$subject = "=?utf-8?B?".base64_encode($subject)."?=";
mail ($address_to, $subject, $message, $headers);
Kód: Vybrať všetko
$mail_form .= $etomite->getCaptchaCode() . "<br />\n";
$mail_form .= "<input type=\"text\" id=\"captcha\" name=\"captcha\" value=\"\" /> « Bezpečnostný kód (<em>zadajte presne a odzadu!</em>)<br />";
Kód: Vybrať všetko
if (checkdnsrr($mailDomain, "MX")) {
Kód: Vybrať všetko
if (checkdnsrr($mailDomain, "MX") && $etomite->validCaptchaCode(strrev($_POST['captcha']))) {
Kód: Vybrať všetko
$email_charset = 'utf-8';
...
$subject = "=?utf-8?B?" . base64_encode($subject) . "?=";
Kód: Vybrať všetko
$content_texts = "<!--\nName: " . $name . "\nE-mail: " . $email . "\nSubject: " . $_POST['subject'] . "\nIP: " . $_SERVER['REMOTE_ADDR'] . "\nDate: " . date('m.d.Y H:m:s') . "\n-->\n\nContent:\n--------\n\n " . $content_text . "\n\n--\nFrom Etomite Mail Form";
Kód: Vybrať všetko
<!--
Name: Your Name
E-mail: your@email.com
Subject: Subject
IP: 88.212.21.31
Date: 05.07.2007 07:05:35
-->
Content:
--------
Text e-mailu.
--
From Etomite Mail Form
Kód: Vybrať všetko
$message = $content_texts;