[請益] 想請問如何在amfphp裡加入phpmailer

看板PHP作者 (看見歐若拉)時間16年前 (2009/02/26 00:15), 編輯推噓1(105)
留言6則, 3人參與, 最新討論串1/1
各位高手好,遇到了一個問題希望能尋求幫助 最近在試flash連接php存資料到mysql,在網路上找到amfphp,已經成功能寫入了 但由於在寫入資料的同時,也要同時寄確認信 而我之前也用過phpmailer並成功 因此就想直接把phpmailer放到amfphp接的那個php檔裡 只是怎麼樣都無法成功寄出....(兩個獨立都確定可成功) 由於phpmailer和amfphp都是依照網路上別人的寫法修改而成, 不是自己瞭解而寫出來的 因此我在想可能是合併時,還有地方要再修改但我沒改到,或是寫法錯了 希望各位高手能幫忙解惑,先謝謝大家了! -----------------------以下為php程式碼------------------------------ <?php class Counter{ var $dbhost = "localhost"; // 你host的位置(可以用IP) var $dbname = "dbone"; //你在資料庫表的名稱 var $dbuser = "aaa"; //使用者帳號 var $dbpass = "aaa"; //使用者密碼(自己設) var $conn; function Counter(){ //這個function主要是連接資料庫 $this->conn = mysql_pconnect($this->dbhost, $this->dbuser, $this->dbpass); mysql_query("SET NAMES 'utf8'"); mysql_select_db ($this->dbname); } function insert($myname,$email,$re_name,$re_email,$style) { //這是輸入資料進資料庫 $sql="INSERT into one (myname,email,re_name,re_email,style,time) values"; $sql.="('$myname','$email','$re_name','$re_email','$style',now())"; $result = mysql_query($sql)or die(mysql_error()); if($result) return mysql_insert_id($this->conn); //使用phpmailer發送郵件 require_once("phpmailer/class.phpmailer.php"); $mail = new PHPMailer(); $mail->IsSMTP(); // set mailer to use SMTP //設定信件字元編碼 $mail->CharSet="UTF-8"; //設定信件編碼,大部分郵件工具都支援此編碼方式 $mail->Encoding = "base64"; $mail->From = "123e@123.com"; $mail->FromName = "aaa"; $mail->Host = 'mail.123.com'; $mail->Port = 25; //default is 25, gmail is 465 or 587 $mail->SMTPAuth = true; $mail->Username = "aaa"; $mail->Password = "aaa"; $mail->addAddress($re_email, $re_name); $mail->WordWrap = 50; if (!empty($attach)) $mail->AddAttachment($attach); $mail->IsHTML(false); //郵件標題 $mail->Subject="確認通知"; //郵件內容 $mail->Body =" 11111222233333! "; //寄送郵件 if(!$mail->Send()) { echo "郵件無法順利寄出!"; echo "Mailer Error: " . $mail->ErrorInfo; exit; }else{ echo "<script type=\"text/javascript\">"; echo "window.alert(\"請至您的信箱收信\");"; echo "</script>"; } } } ?> ---------------另外附上flash檔ActionScript3.0程式內容--------------- import flash.net.URLRequest; import flash.net.NetConnection; import flash.net.Responder; var gateway:String = "http://localhost/act1/amfphp/gateway.php";/*連接amfphp裡的gateway.php*/ var connection:NetConnection; var responder:Responder; var insert_responder:Responder; insert_responder = new Responder(onSend, SendFault); /*資料傳送成功或失敗*/ connection = new NetConnection; connection.connect(gateway); connection.call("Counter.getData", responder);/*call我們寫的PHP(檔案名稱.副程式名稱)*/ /*--------以下為發送-------*/ textInput_s1.border = true; /*send_s1.label = "發送資料";*/ send_s1.addEventListener(MouseEvent.CLICK,SendToSQL); function SendToSQL(event:MouseEvent):void{ SendData(textInput_s1.text,textInput2_s1.text,textInput3_s1.text,textInput4_s1.text,text_s1.text); } function SendData(myname,email,re_name,re_email,style):void{ connection.objectEncoding = 3; connection.connect(gateway); connection.call("Counter.inSert",insert_responder,myname,email,re_name,re_email,style); /*call我們寫的PHP(檔案名稱.副程式名稱)*/ } function SendFault(fault:Object):void { trace("failt"); } function onSend(onResult:Object):void { /*資料傳送成功時*/ trace("發送成功"); --------------------------------------------------------------------------- 以上,麻煩大家了~~謝謝!! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 118.161.128.74

02/26 01:25, , 1F
錯誤訊息是什麼?
02/26 01:25, 1F

02/26 02:00, , 2F
我在flash裡沒有看到錯誤訊息耶!是發送成功,資料
02/26 02:00, 2F

02/26 02:01, , 3F
有寫進資料庫,但信沒有寄出
02/26 02:01, 3F

02/26 10:21, , 4F
phpmailer的訊息是寄成功嗎 不然你看主機maillog
02/26 10:21, 4F

02/27 01:26, , 5F
不好意思!我找不我的maillog耶,不知道它在哪兒
02/27 01:26, 5F

02/27 01:29, , 6F
但我有試過用html傳php的方式寫,設定一樣,可以寄呢
02/27 01:29, 6F
文章代碼(AID): #19fMwp4g (PHP)
文章代碼(AID): #19fMwp4g (PHP)