2013-05-13 3 views
1

jQuery ajax 호출에서 게시 된 GET 변수를 읽고 그 값 중 일부를 기반으로 전자 메일을 보내는 단순하고 완전한 독립 실행 형 ASP 스크립트를 만들려고합니다. 그러나 나는 완전히 ASP에 익숙하지 않으며 그것을 변환하는 데 약간의 문제가있다.ASP에서 PHP 메일 스크립트를 어떻게 다시 만들 수 있습니까?

제 연구에서 $ _GET [ 'var_name']에 해당하는 ASP는 Request.QueryString [ 'var_name'] 인 것으로 보입니다. 그러나 이메일을 보내면서 ASPEmail, CDOSYS, IPWorksMail, JMail 등의 모든 것을 사용하여 수십, 수십 개의 예제를 발견했습니다. 저는 몇 가지 시도를 해본 결과 긍정적 인 결과를 얻지는 않습니다. 그래서

<?php 
    if($_GET['val1'] != "") { 
    // Add section one to the email. 
    } 

    if($_GET['val2'] != "") { 
    // Add section two to the email 
    } 

    $email_company = mail($_GET['company_email'], $subject, $message, $headers); 
    $email_client = mail($_GET['client_email'], $subject, $message, $headers); 

    if($email_company && $email_client) { 
    echo 'success'; 
    } 
    else { 
    echo 'error'; 
    } 

?> 

, 나는 이메일에 사용할 찾고해야하는지 : 여기

내가 PHP로 작성, ASP에 달성하기 위해 노력하고있어인가? 이 페이지를 독립적으로 만들어서 앉아서 AJAX 호출을받을 수 있습니까? 시간 내 주셔서 감사합니다.

편집 : 나는이 같은 물건을 시도하고있다 내가없이 500 서버 오류가 실패

. 나는 오류 메시지를 볼 수 없기 때문에 500 페이지를 얻었으므로 문제를 찾을 곳을 모른다.

<%= 


' Create the Mail Message 
Dim Mail As New MailMessage 

' Set the address information 
Mail.From = New MailAddress("[email protected]") 
Mail.To.Add("[email protected]") 

' Set the content of the email 
Mail.Subject = "Testing Email" 
Mail.Body = "Hello, I am a test email!" 

' Send the message 
Dim SMTP As New SmtpClient("MAIL SERVER") 
SMTP.EnableSsl = False 
SMTP.Credentials = New System.Net.NetworkCredential("USERNAME", "PASSSWORD") 
SMTP.Port = 25 

SMTP.Send(Mail) 



%> 
+0

(하지만 그건 항상 최선은 아닙니다). ASP.NET의 경우 AJAX를 처리하기 위해 PageMethods 또는 WebMethods를 사용하는 것만 큼 사소한 것입니다. – user2246674

+0

@user. 미안합니다. 나는 선택할 확실하지 않았다. 제가 말했듯이, 저는 ASP 전체에 대해 새로운 것입니다. 또한, 페이지 메소드를 조회하고 내가 찾은 것을 봅니다. 귀하의 회신에 감사드립니다. –

답변

0

다음은 독립형 페이지와 웹 메소드를 사용한 예입니다. 그래도 문제가 발생하면 웹 서버 구성에 문제가 될 수 있습니다. IIS를 사용하는 경우 가상 디렉터리 나 웹 사이트 내부의 응용 프로그램에서 적절한 바인딩으로 페이지를 설정해야합니다. 위치에 간단한 html 페이지를 만들어서 페이지가 도달 할 수 있는지 (그리고 "어디서"라고 생각하는지) 확인하십시오.

건배.

<%@ Page Language="C#" %> 


<script src="//ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script> 
<script> 

    $(function() { 

     var params = {}; 
     params['from'] = '[email protected]' 
     params['to'] = '[email protected];[email protected]'; 
     params['body'] = 'hello world';  

     $.ajax({ 
      type: 'POST', 
      url: 'default.aspx/SendMail', 
      data: JSON.stringify(params), 
      contentType: 'application/json; charset=utf-8', 
      dataType: "json" 
     }); 
    }); 
</script> 

<script runat="server"> 


    [System.Web.Services.WebMethod] 
    public static void SendMail(string to, string from, string body) 
    { 

     var mail = new System.Net.Mail.MailMessage(); 
     mail.Body = body; 
     mail.From = new System.Net.Mail.MailAddress(from); 
     foreach (var r in to.Split(';')) 
      mail.To.Add(r); 

     var smtp = new System.Net.Mail.SmtpClient("mail.yourdomain.com"); 

     smtp.Send(mail); 

    } 

</script> 
는 [려면 SmtpClient (http://msdn.microsoft.com/en-us/library/system.net.mail.smtpclient.aspx) 메일을 보낼 때 사용하는 것만 큼 간단 .NET를 들어
+0

내 자신의 스크립트 작성을위한 예제로 예제를 사용했습니다. 고맙습니다. –

+0

기꺼이 도와 드리겠습니다! – frax

관련 문제