2017-11-23 10 views
-2

これはフォーム提出時に電子メールに接続する私の連絡フォームです。私はそれを行うためにネットで研究したが、私はコードを実行するように見えることはできません。HTML、ASP - 連絡先フォームが動作しない

私は2つのファイルを持っています.htmlコードとaspコードで構成されています。

お願いします。あなたの指導に感謝します。

<body> 
 
<h3>Contact Form</h3> 
 
    <form name="form1" method="post" action="process.asp"> 
 
    <label for="name">name</label> 
 
    <input type="text" id="name" name="name" placeholder="Your web id.."/> 
 
    <br><br> 
 
    <label for="deptID">Department ID</label> 
 
    <input type="text" id="deptID" name="departmentID" placeholder="Your department ID.."> 
 
    <br><br> 
 
    <label for="issue">Issue</label> 
 
    <select id="issue" name="issue"> 
 
     <option value="">Non-Availability of Test Points</option> 
 
     <option value="">Unable to Change Cycle Time Value</option> 
 
     <option value="">Unable to Retrieve Report</option> 
 
    </select> 
 
    <br><br> 
 
    <label for="subject">Additional Message</label> 
 
    <textarea id="subject" name="subject" placeholder="Write something.." style="height:200px"></textarea> 
 
     <br><br> 
 
    <input type="submit" value="Submit"> 
 
    </form>

これはprocess.aspページです。あなたのコードスニペットで起こってますが、彼らは非常に不完全見ていただきました!

+2

「役に立たない」とはあまり役に立ちません。エラーメッセージが表示されますか?起こってはいけないことは何ですか?それはどうしたらいいのでしょうか? –

+0

フィードバックのお寄せいただきありがとうございます。残念なことに、エラーはありませんが、私の状況を説明するには「Wont Work」が最善の言葉です。基本的にASPコードは実行されていないようです。ボタンをクリックすると、ページはメールページにリダイレクトされません。 – xerxes39

+0

変数を設定する前に 'Response.Write" Sending Email'を追加し、コードが実行されていることを少なくとも確認するため 'Set Mail = Nothing'の後に' Response.Write "Email Complete"を実行してください –

答えて

-1

<% 
 

 
formname = Request.Form("name") 
 
formID = Request.Form("departmentID") 
 
formquery = Request.Form("issue") 
 
formsubject = Request.Form("subject") 
 

 
Set Mail = Server.CreateObject("CDONTS.NewMail") 
 

 
Mail.From = formname 
 
Mail.FromName = formname 
 

 

 
Mail.AddAddress "[email protected]" 
 

 

 
Mail.Subject = "Form submitted from web site" 
 

 

 
Bodytxt = "Details of Form submission :" & VbCrLf & VbCrLf 
 
Bodytxt = Bodytxt & "Contact Name : " & formname & VbCrLf 
 
Bodytxt = Bodytxt & "ID : " & formID & VbCrLf 
 
Bodytxt = Bodytxt & "Query Entered : " & formquery & VbCrLf 
 
Bodytxt = Bodytxt & "Subject Entered : " & formsubject 
 

 

 
Mail.Body = Bodytxt 
 

 

 
Mail.Username = "[email protected]" 
 
Mail.Password = "password" 
 

 

 
Mail.Host = "smtp.gmail.com" 
 
Mail.Port = "587" 
 
Mail.Send 
 

 

 
Set Mail = Nothing 
 

 
%>

はわからない、あなたは、コードのバックエンド・セットにASPページに参​​加するよりも、ヒープを必要としています。

C#とASP.Netを使用した標準設定は次のとおりです。 C#ASPだろう

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %> 

<!DOCTYPE html> 

<html xmlns="http://www.w3.org/1999/xhtml"> 
<head runat="server"> 
    <title></title> 
</head> 
<body> 
    <form id="form1" runat="server"> 
     <div> 
     </div> 
    </form> 
</body> 
</html> 

これは私のだろう(あなたが呼ばれるとHTMLですが、本当にあなたのASPを意味する)私のページは、「Default.aspxを」と呼ばれている

を言うそして、これに参加しました。あなたが上記の行っていることは2つのファイル間の参照は何もない、働くことはありません、コードのあなたの最初の作品はちょうどプラーイある

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Web; 
using System.Web.UI; 
using System.Web.UI.WebControls; 

public partial class _Default : System.Web.UI.Page 
{ 
    protected void Page_Load(object sender, EventArgs e) 
    { 

    } 
} 

:次のようになりますネット

ASPではなく、C#環境を定義するものは何もありません。

Visual Studio 2015(無料)を入手し、「新規」をクリックしてASP Webサイトを選択します。新しいプロジェクトをクリックして「Webフォームを追加」をクリックすると、適切な開始が得られたら、フォームとコードの追加を開始できます。

Caz

+0

フィードバックをいただきありがとうございます。私は現在、ウェブサイト上で作業していますが、私はそうではありません。 – xerxes39

+0

バックエンド言語を使用する必要があります。バックエンド言語を使用しない形式で電子メールを使用する方法はありません。最も一般的なのはPHPまたはC#です。あなたは電子メールにjavascriptで行うことができますが、私はそれらを使用したことはありません。だからちょうど覚えて、そこにバックエンドのコードなしでメールする方法はありません。 – Caz1224

+0

また、スニペットに現在表示されているコードは、vb.Netのように見えます。ちょうどC#の単純ないとこです – Caz1224

関連する問題