แบบฟอร์มส่งเมล์ ส่งไปแล้วอ่านภาษาไทยไม่ได้ครับ

สำหรับผู้ที่ เริ่มต้น Programming - PHP มีอะไร แนะนำ หรือข้อสงสัยต้องบอร์ด นี้ คนที่มีความรู้ แบ่งปันคนอื่นบ้างนะ ปัญหาการเขียนโปรแกรม แบบ OOP Session Cookies php network

Moderator: mindphp, ผู้ดูแลกระดาน

R35

แบบฟอร์มส่งเมล์ ส่งไปแล้วอ่านภาษาไทยไม่ได้ครับ

โพสต์ที่ยังไม่ได้อ่าน โดย R35 »

โค้ด//

<?php

#change the email address in the variable $adminaddress below to the email address you want
#the form to send to.
$adminaddress = "[email protected]"; // อีเมล์ปลายทางของเรา
$sitename = "Myweb.com "; // ชื่อเว็บของเรา

#make sure your input field variable names in flash are the same as the field names below,
#leave out the dollar sign in flash.
mail("$adminaddress","Info Smithtech", // รายละเอียดอีเมล์
"A customer at $sitename has made the following enquiry\n
First Name: $name
Telephone: $telno
Email: $from\n
Message:
-----------------------------------------------------------------------------------------
$comments

Logged Info :
-----------------------------------------------------------------------------------------
Using: $HTTP_USER_AGENT
Hostname: $ip
IP address: $REMOTE_ADDR
Date/Time: $date","FROM:$adminaddress");

?>


พอส่งไปแล้ว ตรงไหนที่เป็นภาษาไทยมันจะเป็นเครื่องหมาย ?????????? หมดเลยครับ จะเซ็ทให้มันอ่านภาษาไทยได้ยังไงบ้างครับ ขอบคุณครับ
sofar01
PHP Newbie
PHP Newbie
โพสต์: 6
ลงทะเบียนเมื่อ: 22/02/2011 9:34 am

Re: แบบฟอร์มส่งเมล์ ส่งไปแล้วอ่านภาษาไทยไม่ได้ครับ

โพสต์ที่ยังไม่ได้อ่าน โดย sofar01 »

รูบแแบ ในฐานข้อมูลใช้ แบบใหน UTF /U8/tis-620 โค๊ดเต็มๆมีแค่นี้เหรอ
4404

Re: แบบฟอร์มส่งเมล์ ส่งไปแล้วอ่านภาษาไทยไม่ได้ครับ

โพสต์ที่ยังไม่ได้อ่าน โดย 4404 »

sofar01 เขียน:รูบแแบ ในฐานข้อมูลใช้ แบบใหน UTF /U8/tis-620 โค๊ดเต็มๆมีแค่นี้เหรอ
โค้ดเต็มๆมีแค่นี้ครับ แล้วก็มีไฟล์ HTML ที่เป็นช่อง Input Text แค่นั้นครับ
4404

Re: แบบฟอร์มส่งเมล์ ส่งไปแล้วอ่านภาษาไทยไม่ได้ครับ

โพสต์ที่ยังไม่ได้อ่าน โดย 4404 »

ไม่มีฐานข้อมูลครับ มี 2 ไฟล์ เป็น html กับ php เท่านั้นครับ ส่งเมล์เข้า Hosting ตัวเองครับ
sofar01
PHP Newbie
PHP Newbie
โพสต์: 6
ลงทะเบียนเมื่อ: 22/02/2011 9:34 am

Re: แบบฟอร์มส่งเมล์ ส่งไปแล้วอ่านภาษาไทยไม่ได้ครับ

โพสต์ที่ยังไม่ได้อ่าน โดย sofar01 »

บุคคลทั่วไป เขียน:
sofar01 เขียน:รูบแแบ ในฐานข้อมูลใช้ แบบใหน UTF /U8/tis-620 โค๊ดเต็มๆมีแค่นี้เหรอ
โค้ดเต็มๆมีแค่นี้ครับ แล้วก็มีไฟล์ HTML ที่เป็นช่อง Input Text แค่นั้นครับ
ก็เอามาลงให้หมดสิครับ คุณ

ลองใส่

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

อันนี้ถ้ามี db ค่อนเขาไปใส่
mysql_query("SET NAMES TIS620");
touleg
PHP Super Member
PHP Super Member
โพสต์: 480
ลงทะเบียนเมื่อ: 25/01/2010 11:57 pm
ติดต่อ:

Re: แบบฟอร์มส่งเมล์ ส่งไปแล้วอ่านภาษาไทยไม่ได้ครับ

โพสต์ที่ยังไม่ได้อ่าน โดย touleg »

โค้ด: เลือกทั้งหมด

function sendEmail($from,$subject,$message,$emailto){
    $strTo = $emailto;
    $strSubject = "=?utf-8?B?".base64_encode($subject)."?=";
    $strHeader  = "MIME-Version: 1.0\r\n";
    $strHeader .= "Content-type: text/plain; charset=utf-8\r\n";
    $strHeader .= "From: ".$from."\r\n";
    //$strHeader .= "Cc: \r\n";
    //$strHeader .= "Bcc: \r\n";
    $strMessage = $message."\r\n";

    if(mail($strTo,$strSubject,$strMessage,$strHeader))
    {
        return true;
    }else{
        return false;
    }
}
 
333822
PHP Full Member
PHP Full Member
โพสต์: 38
ลงทะเบียนเมื่อ: 08/01/2011 11:22 am

Re: แบบฟอร์มส่งเมล์ ส่งไปแล้วอ่านภาษาไทยไม่ได้ครับ

โพสต์ที่ยังไม่ได้อ่าน โดย 333822 »

ถ้าเราใช้เครื่องคอม เป็น เซิฟเวอร์ จะสามารถส่ง mail ได้ไหมครับ
แก้ไขล่าสุดโดย mindphp เมื่อ 28/02/2011 11:53 pm, แก้ไขไปแล้ว 1 ครั้ง.
เหตุผล: แกไขคำผิด จะ ไม่ใช่ จา
ภาพประจำตัวสมาชิก
mindphp
ผู้ดูแลระบบ MindPHP
ผู้ดูแลระบบ MindPHP
โพสต์: 41384
ลงทะเบียนเมื่อ: 22/09/2008 6:18 pm
ติดต่อ:

Re: แบบฟอร์มส่งเมล์ ส่งไปแล้วอ่านภาษาไทยไม่ได้ครับ

โพสต์ที่ยังไม่ได้อ่าน โดย mindphp »

หน้าเว็บ ใช้ charset อะไรหน้าส่งก็ควรเป็นตามนั้นครับ
หรือ จะแปลงเป็น utf-8 ก็ส่งก็ดีนะครับ
ติดตาม VDO: http://www.youtube.com/c/MindphpVideoman
ติดตาม FB: https://www.facebook.com/pages/MindphpC ... 9517401606
หมวดแชร์ความรู้: https://www.mindphp.com/forums/viewforum.php?f=29
รับอบรม และพัฒนาระบบ: https://www.mindphp.com/forums/viewtopic.php?f=6&t=2042
sofar01
PHP Newbie
PHP Newbie
โพสต์: 6
ลงทะเบียนเมื่อ: 22/02/2011 9:34 am

Re: แบบฟอร์มส่งเมล์ ส่งไปแล้วอ่านภาษาไทยไม่ได้ครับ

โพสต์ที่ยังไม่ได้อ่าน โดย sofar01 »

touleg เขียน:

โค้ด: เลือกทั้งหมด

function sendEmail($from,$subject,$message,$emailto){
    $strTo = $emailto;
    $strSubject = "=?utf-8?B?".base64_encode($subject)."?=";
    $strHeader  = "MIME-Version: 1.0\r\n";
    $strHeader .= "Content-type: text/plain; charset=utf-8\r\n";
    $strHeader .= "From: ".$from."\r\n";
    //$strHeader .= "Cc: \r\n";
    //$strHeader .= "Bcc: \r\n";
    $strMessage = $message."\r\n";

    if(mail($strTo,$strSubject,$strMessage,$strHeader))
    {
        return true;
    }else{
        return false;
    }
}
 
ข้อความตรงใหนไม่แสดงภาษาไทย ครับ
4404

Re: แบบฟอร์มส่งเมล์ ส่งไปแล้วอ่านภาษาไทยไม่ได้ครับ

โพสต์ที่ยังไม่ได้อ่าน โดย 4404 »

ผมให้โค้ดทั้งหมดไปลองดูแล้วกันครับ

1.send_mail.swf - หน้าฟอร์มรับข้อมูล มี Action Script ฝังอยู่ด้้านใน (โครงสร้างต้องใช้ Flash CS5 เปิดดู)

2.mail.php3 - หน้าโค้ด PHP ล้วนๆ รับคำสั่งทั้งหมดจากไฟล์ swf
ตอบกลับโพส

ผู้ใช้งานขณะนี้

สมาชิกกำลังดูบอร์ดนี้: ไม่มีสมาชิกใหม่ และบุคลทั่วไป 126