Dziś postawiłem na serwerze elitecms, Na stronie są polskie znaki w artykułach czy menu ale problem zaczyna się gdy zaczynam tłumaczyć pola z formularza.
Kod
$errors = array();
if (isset($_POST['email'])) {
if ($_POST['name'] == "")
$errors['name'] = "Wypełnij pole<b> Imię </b>!";
if ($_POST['sender_email'] == "")
$errors['sender_email'] = "<b>Wypełnij </b>lub popraw pole email !";
if (!eregi("^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,4})$",
$_POST['sender_email']))
$errors['sender_email'] = "email został <b>źle</b> wprowadzony !";
if ($_POST['message'] == "")
$errors['message'] = "<b>Wiadomość została źle</b> wprowadzona !";
if (empty($errors)) {
$mailTo = $settings['site_email'];
$subject = "Feedback email from your eliteCMS website";
$name = $_POST['name'];
$sender_email = $_POST['sender_email'];
$message = $_POST['message'];
$headers = 'From: Email processed by eliteCMS contact form' . "\r\n" . 'X-Mailer: PHP/' . phpversion();
$headers = "Content-type: text/plain; charset=\"iso-8859-2\"\n";
$body = "Hello sir,\n";
$body .= "A visitor from your eliteCMS website ";
$body .= "send an email to you. \n";
$body .= "Visitor's details are :\n";
$body .= " \n";
$body .= "Visitor's Email : {$sender_email} \n";
$body .= "Visitor's Name : {$name} \n";
$body .= "Email Message : {$message} \n";
$body .= " \n";
//email success msg
$sendmail = @mail($mailTo, $subject, $body, $headers);
if (!$sendmail) {
$msqErr = "<div class=\"mend\"><b>Wiadomość </b>nie została wysłana. Skontaktuj się z administratorem !.</div>";
} else {
$successMSG = "<span class=\"successMsg\">Dziękujemy <span>$name</span> , wiadomość została wysłana.</span>";
}
} else {
$displayError = '<div class="mend"><ul style="list-style:none;">';
foreach ($errors as $error) {
$displayError .= "<li>$error</li>";
}
$displayError .= '</ul></div>';
}
} else {
//nothing has been send yet !
}
?>
<div class="ctFrmHd">-: Formularz kontaktowy :-</div>
<?php
if (!empty($displayError)) {
echo $displayError;
echo "
";
}
if (!empty($successMSG)) {
echo $successMSG;
}
if (!empty($msqErr)) {
echo $msqErr;
}
?>
<form name="contactForm" method="post" enctype="text/plain" action="<?php echo $PHP_SELF; ?>">
<table width="419" border="0" cellpadding="8" cellspacing="0" id="contcatFormTbl">
<tr>
<td width="88">  <b>;Imię </b>:</td>
<td width="304"><input type="text" name="name" id="name" class="frmInput" value="<?php echo
$_POST['name'] ?>"/><?php if (!empty($errors['name'])) {
echo " <span class=\"mend\">*</span>";
} ?></td>
</tr>
<tr>
<td> Email :</td>
<td><input type="text" name="sender_email" id="sender_email" class="frmInput" value="<?php echo
$_POST['sender_email'] ?>"/><?php if (!empty($errors['sender_email'])) {
echo " <span class=\"mend\">*</span>";
} ?></td>
</tr>
<tr>
<td> <b>;Wiadomość :</b></td>
<td><textarea name="message" id="message" class="frmTarea"><?php echo $_POST['message'] ?></textarea><?php if (!empty($errors['message'])) {
echo " <span class=\"mend\">*</span>";
} ?></td>
</tr>
<tr>
<td> </td>
<td align="center"><input type="submit" name="email" id="email" value=<b>"Wyślij"</b> class="ctFrmBU" /></td>
</tr>
</table>
</form>
if (isset($_POST['email'])) {
if ($_POST['name'] == "")
$errors['name'] = "Wypełnij pole<b> Imię </b>!";
if ($_POST['sender_email'] == "")
$errors['sender_email'] = "<b>Wypełnij </b>lub popraw pole email !";
if (!eregi("^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,4})$",
$_POST['sender_email']))
$errors['sender_email'] = "email został <b>źle</b> wprowadzony !";
if ($_POST['message'] == "")
$errors['message'] = "<b>Wiadomość została źle</b> wprowadzona !";
if (empty($errors)) {
$mailTo = $settings['site_email'];
$subject = "Feedback email from your eliteCMS website";
$name = $_POST['name'];
$sender_email = $_POST['sender_email'];
$message = $_POST['message'];
$headers = 'From: Email processed by eliteCMS contact form' . "\r\n" . 'X-Mailer: PHP/' . phpversion();
$headers = "Content-type: text/plain; charset=\"iso-8859-2\"\n";
$body = "Hello sir,\n";
$body .= "A visitor from your eliteCMS website ";
$body .= "send an email to you. \n";
$body .= "Visitor's details are :\n";
$body .= " \n";
$body .= "Visitor's Email : {$sender_email} \n";
$body .= "Visitor's Name : {$name} \n";
$body .= "Email Message : {$message} \n";
$body .= " \n";
//email success msg
$sendmail = @mail($mailTo, $subject, $body, $headers);
if (!$sendmail) {
$msqErr = "<div class=\"mend\"><b>Wiadomość </b>nie została wysłana. Skontaktuj się z administratorem !.</div>";
} else {
$successMSG = "<span class=\"successMsg\">Dziękujemy <span>$name</span> , wiadomość została wysłana.</span>";
}
} else {
$displayError = '<div class="mend"><ul style="list-style:none;">';
foreach ($errors as $error) {
$displayError .= "<li>$error</li>";
}
$displayError .= '</ul></div>';
}
} else {
//nothing has been send yet !
}
?>
<div class="ctFrmHd">-: Formularz kontaktowy :-</div>
<?php
if (!empty($displayError)) {
echo $displayError;
echo "
";
}
if (!empty($successMSG)) {
echo $successMSG;
}
if (!empty($msqErr)) {
echo $msqErr;
}
?>
<form name="contactForm" method="post" enctype="text/plain" action="<?php echo $PHP_SELF; ?>">
<table width="419" border="0" cellpadding="8" cellspacing="0" id="contcatFormTbl">
<tr>
<td width="88">  <b>;Imię </b>:</td>
<td width="304"><input type="text" name="name" id="name" class="frmInput" value="<?php echo
$_POST['name'] ?>"/><?php if (!empty($errors['name'])) {
echo " <span class=\"mend\">*</span>";
} ?></td>
</tr>
<tr>
<td> Email :</td>
<td><input type="text" name="sender_email" id="sender_email" class="frmInput" value="<?php echo
$_POST['sender_email'] ?>"/><?php if (!empty($errors['sender_email'])) {
echo " <span class=\"mend\">*</span>";
} ?></td>
</tr>
<tr>
<td> <b>;Wiadomość :</b></td>
<td><textarea name="message" id="message" class="frmTarea"><?php echo $_POST['message'] ?></textarea><?php if (!empty($errors['message'])) {
echo " <span class=\"mend\">*</span>";
} ?></td>
</tr>
<tr>
<td> </td>
<td align="center"><input type="submit" name="email" id="email" value=<b>"Wyślij"</b> class="ctFrmBU" /></td>
</tr>
</table>
</form>
próbowałem już 2 metod:
- $headers = "Content-type: text/plain; charset=\"iso-8859-2\"\n";
$headers .= "Content-Transfer-Encoding: 8bit";
$headers .= "Content-encoding: iso-8859-2\n"; - dopisując do form charset="iso-8859-2"
Macie jakiś pomysł