PDA

View Full Version : عدم پشتیبانی فرم تماس از زبان فارسی



sallamatii
پنج شنبه 10 بهمن 1392, 08:20 صبح
وقتی قسمت موضوع فرم رو فارسی پر و ارسال کنم داخل اینباکس هاستم با فونت عجیب و غریبی دیده میشه
مثل این عکس های زیر
http://mrazimzadeh.ir/2014-01-29_12-14-21.png
http://mrazimzadeh.ir/2014-01-29_12-15-14.png

فکر می کنم باید قسمتی از کد زیر رو ویرایش کنم
اما کدوم قسمت و چی باید بنویسم؟

// Validate and send email
function smcf_send($name, $email, $subject, $message, $cc) {
global $to, $extra;


// Filter and validate fields
$name = smcf_filter($name);
$subject = smcf_filter($subject);
$email = smcf_filter($email);
if (!smcf_validate_email($email)) {
$subject .= " - invalid email";
$message .= "\n\nBad email: $email";
$email = $to;
$cc = 0; // do not CC "sender"
}

// Add additional info to the message
if ($extra["ip"]) {
$message .= "\n\nIP: " . $_SERVER["REMOTE_ADDR"];
}
if ($extra["user_agent"]) {
$message .= "\n\nUSER AGENT: " . $_SERVER["HTTP_USER_AGENT"];
}

// Set and wordwrap message body
$body = "نام: $name\n\n";
$body .= "متن پیام: $message";
$body = wordwrap($body, 70);

// Build header
$headers = "From: $email\n";
if ($cc == 1) {
$headers .= "Cc: $email\n";
}
$headers .= "X-Mailer: PHP/SimpleModalContactForm";

// UTF-8
if (function_exists('mb_encode_mimeheader')) {
$subject = mb_encode_mimeheader($subject, "UTF-8", "B", "\n");
}
else {
// you need to enable mb_encode_mimeheader or risk
// getting emails that are not UTF-8 encoded
}
$headers .= "MIME-Version: 1.0\n";
$headers .= "Content-type: text/plain; charset=utf-8\n";
$headers .= "Content-Transfer-Encoding: quoted-printable\n";

p30online
پنج شنبه 10 بهمن 1392, 12:45 عصر
شما وقتی فرم را ارسال می کنید باید قبل از ارسال به بانک اطلاعاتی تون زبان یا query را روی utf-8 تنظیم کنید و بعد داخل بانک وارد کنید و یکی دیگه هم این است هنگامی که بانک را طراحی می کنید باید قسمت زبان را روی utf-8 persian یا utf-8-general-ci تنظیم کنید تا فارسی تایپ شود!

marys_farahani
جمعه 11 بهمن 1392, 09:29 صبح
علاوه بر کوئری و فیلد ستونی که اطلاعات فارسی رو قرار ذخیره کنه شما باید خود دیتابستون رو هم utf8 ست کنید.

yegane8
جمعه 11 بهمن 1392, 16:08 عصر
به تاپیک :پرسش های تکراری
http://barnamenevis.org/showthread.php?356992-%D9%BE%D8%B1%D8%B3%D8%B4%D9%87%D8%A7%DB%8C-%D8%AA%DA%A9%D8%B1%D8%A7%D8%B1%DB%8Cمراجه کن.

<meta http-equiv="content-type" content="text/html; charset=utf-8"/>

tick-tock
جمعه 11 بهمن 1392, 16:17 عصر
موقع insert کردن به دیتابیس name set رو روی utf8 قرار بده
MYSQL_QUERY('SET NAMES utf8');

ببین که اصلا charset متاتگت utf8 هست یا نه

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />