Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,038

HOME > PHP > PHP Forum > เว็บแรกที่หัดเขียนน่ะครับ รบกวนช่วยดูเรื่องการSending Email Upload Form & Attachment หน่อยน่ะครับ



 

เว็บแรกที่หัดเขียนน่ะครับ รบกวนช่วยดูเรื่องการSending Email Upload Form & Attachment หน่อยน่ะครับ

 



Topic : 028285

Guest




คืออย่างนี้ครับผมเป็นมือใหม่ พึ่งเขียนเว็บนี้เป็นเว็บแรก [url]http://jajawahaha.surge8.com/index.html/[url] เป็นตัวทดสอบระบบก่อนเปิดใช้เว็บจริงน่ะครับ (ซึ่งเว็บจริงยังไม่ได้จดทะเบียนเลย)

คือผมก็ลองๆทำตามหนังสือที่ผมซื้อมาน่ะครับ (สร้างเว็บสวยด้วย dreamweavercs3)
ทีนี้ผมก็ลองสร้างฟอร์มรับข้อมูลเพราะต้องการรับความคิดเห็น หรือ รับคำถามจากลูกค้าของผมครับ แล้วบังคับให้ส่งมาถึงเมลของผมโดยตรง


ก็ทำตามหนังสือไปเรื่อยๆจนกระทั่งมาสังเกตได้ว่า ไอ้หนังสือที่ผมซื้อมาเนี่ยมันสอนทำแต่ฟอร์ม แต่มันดันไม่สอนทำสคริปต์ซะนี่ อ้าวซวยล่ะสิอ้ายตูดหมึก

โอ้วพระเจ้างานเข้าสิครับพี่น้อง (หลังจากส่งเมลไปถามสำนักพิมพ์แล้วไร้การตอบสนอง) มือใหม่อย่างผมก็ไม่รู้จะเขียนสคริปต์ยังไงต่อก็เลยมาพึ่งhttps://www.thaicreate.com นี่แหละครับ

กระทู้อ้างอิงครับ
https://www.thaicreate.com/php/php-send-email-multiple-array-form-upload-attach-files.html

ผมเห็นว่ามันค่อนข้างใกล้เคียงกับฟอร์มที่ผมออกแบบ เลยขออนุญาติก้อบปี้ฟอร์มไปใช้น่ะครับ(ซึ่งก็ขอขอบคุณมาก)



ส่วนนี่เป็นเว็บ ส่งเมล+ฝากไฟล์ ที่เป็นปัญหาของผมครับ
http://jajawahaha.surge8.com/contact.html

ลิ้งค์ของสคริปต์ผมครับ (ดัดแปลงจากต้นฉบับ แบบมั่วๆไม่มีความรู้ ยังไงก็ช่วยรบกวนช่วยตรวจให้หน่อยครับ)
http://jajawahaha.surge8.com/Scripts/SendMailArrayUploadAttach.php

ที่ว่ามันมีปัญหาก็เพราะว่ายังไงๆ มันก็ไม่ส่งเมล์ให้ผมซะทีน่ะครับ
ต่อมาผมจึงสงสัยว่าถ้าลองเอาไฟล์ต้นฉบับที่โหลดมาจากกระทู้อ้างอิง
https://www.thaicreate.com/php/php-send-email-multiple-array-form-upload-attach-files.html
มาลองอัพโหลดลง www.surge8.com มันจะสามารถส่งเมลได้มั้ยน้า..า?

ตามลิ้งค์สองอันด้านล่างนี้เลยครับ
[url][/http://jajawahaha.surge8.com/thaicreate/phpSendMailArrayUploadAttach.htmlurl] <<ไฟล์ต้นฉบับ
http://jajawahaha.surge8.com/thaicreate/phpSendMailArrayUploadAttach.php << สคริปต์ต้นฉบับ



ผลปรากฎว่าส่งไม่ได้เหมือนกัน งงเลยครับ ไม่รู้ว่าทางเว็บ www.surge8.com มันไม่อนุญาติให้ใช้สคริปต์ได้หรือเปล่า? หรือว่าไฟล์ต้นฉบับเสียอะไรยังไง อ้ากกก งงไปกว่าเดิมคร้าบบ



ยังไงก็คงต้องขอรบกวน พี่ๆและทีมงานเทพๆใน thaicreate.com ในการสละเวลาอ่าน, ตอบคำถามและตรวจสคริปต์ เว็บของผมด้วยนะครับ

มัดมือชก1 "ขอขอบคุณล่วงหน้าที่ตอบคำถามคร้าบบบบบบ"
มัดมือชก2 "ช่วยผมด้วยคร้าบเพ่ใกล้ส่งงานแว้ว"



Tag : - - - -







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2009-06-15 17:01:31 By : archeye View : 1545 Reply : 10
 

 

No. 1



โพสกระทู้ ( 9 )
บทความ ( 0 )



สถานะออฟไลน์


ส่วนนี่เป็นสคริปต์ที่ผมดัดแปลงครับ




<html>
<head>
<title>PitchaClinic.Com PHP Sending Email</title>
<meta http-equiv="Content-Type" content="text/html; charset=windows-874"><style type="text/css">
<!--
body,td,th {
font-family: Verdana, Arial, Helvetica, sans-serif;
}
-->
</style></head>
<body>
<?
$strTo = "[email protected]";
$strSubject = $_POST["txtSubject"];
$strMessage = nl2br($_POST["txtDescription"]);
$strAge = nl2br($_POST["Age"]);
$strGender = nl2br($_POST["Gender"]);

//*** Uniqid Session ***//
$strSid = md5(uniqid(time()));

$strHeader = "";
$strHeader .= "From: ".$_POST["txtFormName"]."<".$_POST["txtFormEmail"].">\nReply-To: ".$_POST["txtFormEmail"]."";

$strHeader .= "MIME-Version: 1.0\n";
$strHeader .= "Content-Type: multipart/mixed; boundary=\"".$strSid."\"\n\n";
$strHeader .= "This is a multi-part message in MIME format.\n";

$strHeader .= "--".$strSid."\n";
$strHeader .= "Content-type: text/html; charset=windows-874\n"; // or UTF-8 //
$strHeader .= "Content-Transfer-Encoding: 7bit\n\n";
$strHeader .= $strMessage."\n\n";

//*** Attach ***//
for($i=0;$i<count($_FILES["fileAttach"]["name"]);$i++)
{
if($_FILES["fileAttach"]["name"][$i] != "")
{
$strFilesName = $_FILES["fileAttach"]["name"][$i];
$strContent = chunk_split(base64_encode(file_get_contents($_FILES["fileAttach"]["tmp_name"][$i])));
$strHeader .= "--".$strSid."\n";
$strHeader .= "Content-Type: application/octet-stream; name=\"".$strFilesName."\"\n";
$strHeader .= "Content-Transfer-Encoding: base64\n";
$strHeader .= "Content-Disposition: attachment; filename=\"".$strFilesName."\"\n\n";
$strHeader .= $strContent."\n\n";
}
}


$flgSend = @mail($strTo,$strSubject,null,$strHeader); // @ = No Show Error //
if($flgSend)
{
echo "กำลังส่งข้อมูล ขอบคุณค่ะ";
}
else
{
echo "เกิดข้อผิดพลาดในการส่งข้อมูล กรุณาลองใหม่ภายหลังค่ะ.";
}
?>
</body>
</html>






Date : 2009-06-15 17:03:35 By : archeye
 


 

No. 2



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

ผมว่า Web Server ที่คุณใช้อยู่ปิด Script ส่งอีเมล์แน่นอนครับ
Date : 2009-06-15 17:20:17 By : webmaster
 

 

No. 3



โพสกระทู้ ( 9 )
บทความ ( 0 )



สถานะออฟไลน์


ขอบคุณครับ เดี๋ยวขอไปจดทะเบียนเว็บแล้วจะกลับมาแจ้งให้ทราบกันอีกทีง้าบว่าใช้ได้หรือไม่ได้อย่างไร
Date : 2009-06-15 18:48:53 By : archeye
 


 

No. 4



โพสกระทู้ ( 9 )
บทความ ( 0 )



สถานะออฟไลน์


ครับตอนนี้ได้จดทะเบียนเว็บเป็นที่เรียบร้อยครับผมพบปัญหาดังนี้ครับ


พอดีมันติดปัญหาตรงนี้คือ เมื่อกรอกข้อมูลลงในช่อง "กรุณาใส่อีเมลของคุณ" ทำยังไงมันก็ไม่ส่งมาเมล์ที่ผมกำหนดไว้น่ะ เลยอยากรบกวน คุณMR.WIN ช่วยตรวจทาน สคริปต์ที่ผมมั่วเขียนให้หน่อย

ส่วนอันนี้เป็นลิงค์ที่เป็นปัญหาอยู่ ที่ว่ามันไม่ส่งมาเมลที่กำหนดซะที
http://www.pitchaclinic.com/contact.html


ตอนนี้ผมได้นำฝากไฟล์รูปมาด้วยครับรบกวนดูคู่กับสคริปต์ด้านล่างนี้ครับ
vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv
Code (PHP)
<?php
<html>
<head>
<title>PitchaClinic.Com PHP Sending Email</title>
<meta http-equiv="Content-Type" content="text/html; charset=windows-874"><style type="text/css">
<!--
body,td,th {
    font-family: Verdana, Arial, Helvetica, sans-serif;
}
-->
</style></head>
<body>
<?
    $strTo = "[email protected]"; <<<(ตรงนี้เนื่องจากยังทดสอบระบบจึงเป็นเมล์ของผมเอง อนาคตจะให้ส่งข้อมูลไปยังเมล์ [email protected] ครับ)
    $strSubject = $_POST["txtSubject"];
    $strMessage = nl2br($_POST["txtDescription"]);
    $strAge = nl2br($_POST["Age"]); <<<(น่าจะพลาดตรงนี้เพราะผมมั่วครับ)
    $strGender = nl2br($_POST["Gender"]); <<<(น่าจะพลาดตรงนี้เพราะมั่วเหมือนเดิมครับ)

    //*** Uniqid Session ***//
    $strSid = md5(uniqid(time()));

    $strHeader = "";
    $strHeader .= "From: ".$_POST["txtFormName"]."<".$_POST["txtFormEmail"].">\nReply-To: ".$_POST["txtFormEmail"].""; <<<(น่าจะพลาดตรงนี้ครับเลยไม่สามารถกรอก email แล้วส่งได้)

    $strHeader .= "MIME-Version: 1.0\n";
    $strHeader .= "Content-Type: multipart/mixed; boundary=\"".$strSid."\"\n\n";
    $strHeader .= "This is a multi-part message in MIME format.\n";

    $strHeader .= "--".$strSid."\n";
    $strHeader .= "Content-type: text/html; charset=windows-874\n"; // or UTF-8 //
    $strHeader .= "Content-Transfer-Encoding: 7bit\n\n";
    $strHeader .= $strMessage."\n\n";
   
    //*** Attach ***//
    for($i=0;$i<count($_FILES["fileAttach"]["name"]);$i++)
    {
        if($_FILES["fileAttach"]["name"][$i] != "")
        {
            $strFilesName = $_FILES["fileAttach"]["name"][$i];
            $strContent = chunk_split(base64_encode(file_get_contents($_FILES["fileAttach"]["tmp_name"][$i])));
            $strHeader .= "--".$strSid."\n";
            $strHeader .= "Content-Type: application/octet-stream; name=\"".$strFilesName."\"\n";
            $strHeader .= "Content-Transfer-Encoding: base64\n";
            $strHeader .= "Content-Disposition: attachment; filename=\"".$strFilesName."\"\n\n";
            $strHeader .= $strContent."\n\n";
        }
    }
   

    $flgSend = @mail($strTo,$strSubject,null,$strHeader);  // @ = No Show Error //
    if($flgSend)
    {
        echo "กำลังส่งข้อมูล ขอบคุณค่ะ";
    }
    else
    {
        echo "เกิดข้อผิดพลาดในการส่งข้อมูล กรุณาลองใหม่ภายหลังค่ะ.";
    }
?>
</body>
</html>
?>


รูปนี้เป็นฟอร์มที่ผมออกแบบครับ


รูปนี้เป็นปัญหาที่ผมเจอครับ


รูปนี้เป็นชื่อช่องต่างๆที่ผมได้ตั้งเอาไว้นะครับ


รูปนี้เป็นเมล์ปลายทางของผมเองครับ



สุดท้ายนี้ผมขอจุดธูปอัญเชิญเทพใน thaicreate.com มาตอบกระทู้ผมอีกทีนะครับ

Date : 2009-06-22 20:29:08 By : archeye
 


 

No. 5



โพสกระทู้ ( 9 )
บทความ ( 0 )



สถานะออฟไลน์


กระทู้ร่วงแล้ว ขออนุญาติดันแรงๆหนึ่งจึ้กกกกกก
Date : 2009-06-23 12:11:07 By : archeye
 


 

No. 6



โพสกระทู้ ( 9 )
บทความ ( 0 )



สถานะออฟไลน์


ขุดๆคร้าบ รอต่อไปอย่างพอมีความหวัง
Date : 2009-06-24 15:32:13 By : archeye
 


 

No. 7



โพสกระทู้ ( 9 )
บทความ ( 0 )



สถานะออฟไลน์


ขุดกระทู้ครั้งสุดท้ายแล้วครับ เทพไม่มา
Date : 2009-06-26 13:16:42 By : archeye
 


 

No. 8



โพสกระทู้ ( 33 )
บทความ ( 0 )



สถานะออฟไลน์


ใช้ PHPMailer ดีกว่ามั้ยครับ?
http://www.scriptdd.com/webtip/phpmailer_with_gmail.html
Date : 2009-06-26 17:08:37 By : petro152
 


 

No. 9



โพสกระทู้ ( 9 )
บทความ ( 0 )



สถานะออฟไลน์


แฮ่ๆ ตอนนี้ให้รุ่นนพี่ช่วนน่ะครับ ส่วนตัวก็ยังไม่รู้เรื่องเหมือนเดิม
แต่ยังไงก็ขอขอบคุณทุกท่านที่ช่วยดูให้นะครับ

อันนี้เป็นอันล่าสุดที่แก้ไขแล้วครับ มาอัพเดทให้ชมเผื่อจะมีประโยชน์น่ะครับ


อันนี้รูปตอนกรอกข้อมูลครับ


ส่วนนี่เป็นโค้ดที่รุ่นพี่ดูให้น่ะครับ
Code (PHP)
<?php
<html>
<head>
<title>PitchaClinic.Com PHP Sending Email</title>
<meta http-equiv="Content-Type" content="text/html; charset=windows-874"><style type="text/css">
<!--
body,td,th {
	font-family: Verdana, Arial, Helvetica, sans-serif;
}
-->
</style></head>
<body>
<?
	$strTo .= "[email protected]";
	$strSubject = $_POST["txtSubject"];
	$strMessage = nl2br($_POST["txtDescription"]);
	$strAge = nl2br($_POST["Age"]);
	$strGender = nl2br($_POST["Gender"]);

	//*** Uniqid Session ***//
	$strSid = md5(uniqid(time()));

//	$strHeader = "";
	$strHeader .= "From: ".$_POST["txtFormName"]."<".$_POST["txtFormEmail"].">\nReply-To: ".$_POST["txtFormEmail"]."  ";

	$strHeader .= "MIME-Version: 1.0\n";
	$strHeader .= "Content-Type: multipart/mixed; boundary=\"".$strSid."\"\n\n";
	$strHeader .= "This is a multi-part message in MIME format.\n";

	$strHeader .= "--".$strSid."\n";
	$strHeader .= "Content-type: text/html; charset=windows-874\n"; // or UTF-8 //
	$strHeader .= "Content-Transfer-Encoding: 7bit\n\n";
	$strMessage .= " Age  ".$strAge."\n\n";
	$strMessage .= " Gender   ".$strGender."\n\n";
	$strMessage .= " send from ".$_POST["txtFormEmail"] ;
	$strHeader .= $strMessage."\n\n";
	
	//*** Attach ***//
	for($i=0;$i<count($_FILES["fileAttach"]["name"]);$i++)
	{
		if($_FILES["fileAttach"]["name"][$i] != "")
		{
			$strFilesName = $_FILES["fileAttach"]["name"][$i];
			$strContent = chunk_split(base64_encode(file_get_contents($_FILES["fileAttach"]["tmp_name"][$i]))); 
			$strHeader .= "--".$strSid."\n";
			$strHeader .= "Content-Type: application/octet-stream; name=\"".$strFilesName."\"\n"; 
			$strHeader .= "Content-Transfer-Encoding: base64\n";
			$strHeader .= "Content-Disposition: attachment; filename=\"".$strFilesName."\"\n\n";
			$strHeader .= $strContent."\n\n";
		}
	}
	
/*
//echo " strTo  $strTo  ,strSubject $strSubject   ,null, strHeader  $strHeader ";	
//mail($to, $subject, $message, $headers);
// mail('[email protected]', 'the subject', 'the message', null, '[email protected]');
$ma = mail($strTo,$strSubject,$strMessage,$strHeader); 
echo " Status $ma  <br>";
*/
$headers = "From: [email protected] \r\n" . 
           "Reply-To: [email protected] \r\n" . 
           "X-Mailer: PHP/" . phpversion(); 
$headers .= $strHeader;
$flgSend = mail($strTo,$strSubject,$strMessage,$headers);  // @ = No Show Error //
//echo " $flgSend  <br> ";
	if($flgSend)
	{
		echo "กำลังส่งข้อมูล ขอบคุณค่ะ";
		echo " <br> <a href=/>Home</a> ";
	}
	else
	{
		echo "เกิดข้อผิดพลาดในการส่งข้อมูล กรุณาลองใหม่ภายหลังค่ะ.";
		echo " strTo  $strTo  ,strSubject $strSubject   ,strMessage $strMessage, strHeader  $strHeader ";	
		echo " <br> <a href=/>Home</a> ";
	}


?>
</body>
</html>
?>



เสร็จแล้วที่เมลปลายทางก็ได้เมล์แบบนี้ล่ะคร้าบ ดีใจสุดๆ

(ปรกติไฟล์รูปที่แนบมาจะเห็นทันที แต่นี่บังเอิญว่าระบบเขาขัดข้องน่ะครับ)

ไว้โอกาศหน้ามีคำถามจะรอรบกวนต่อไปเรื่อยๆนะคร้าบ
Date : 2009-07-05 01:57:04 By : archeye
 


 

No. 10

Guest


ขอโค้ดอีกไฟล์หนึ่งได้อ่ะป่าวคับ ที่เป็น .html อ่ะ
Date : 2010-04-23 16:39:31 By : lykub
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : เว็บแรกที่หัดเขียนน่ะครับ รบกวนช่วยดูเรื่องการSending Email Upload Form & Attachment หน่อยน่ะครับ
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: นำเข้าสินค้าจากจีน, Taobao, เฟอร์นิเจอร์, ของพรีเมี่ยม, ร่ม, ปากกา, power bank, แฟลชไดร์ฟ, กระบอกน้ำ

Load balance : Server 04
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2025 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่