0

order.asp という 1 つの .asp ファイルのテキスト ボックスから電子メール アドレスの入力を受け取り、ordercomplete.asp という別の .asp ファイルのコードを使用してその電子メール アドレスに電子メールを送信しようとしています (これは、 CDO メール)。ObjSendMail.To = someemail@provider.com を具体的に定義するとメーラーは正しく動作しますが、ObjSendMail.To = Session("EmailSession") などのセッション変数を使用してより動的にすると動作しません。これはorder.aspです

<form id="form1" name="form1" method="post" action="ordercomplete.asp">
  <p>
    <label for="firstname">First Name:</label>
    <input type="text" name="firstname" id="firstname" />
    <%
    Session("EmailSession") = Request.Form("email")
    %>
  </p>
  <p>
    <label for="email">E-Mail Address:</label>
    <input type="text" name="email" id="email" />
  </p>
  <p>
    <input type="submit" name="submit" id="submit" value="Submit" />
  </p>
</form>
<p>&nbsp;</p>

ordercomplete.asp で、ObjSentMail.To をセッション変数に設定する前に、order.asp の電子メール テキスト ボックスに入力された値を出力できるかどうかを確認しようとしました。印刷して、Session("EmailSession")) に保存されているものがあるかどうかを確認しようとしました

<%
Response.Write(Session("EmailSession"))
%>

しかし、それは何も印刷しません。あるaspファイルから入力された値を取得して、この方法で別のaspファイルに転送するにはどうすればよいですか?

ありがとう。

4

2 に答える 2

0

order.aspにフォームを投稿していordercomplete.aspます。フォーム フィールドは、フォーム アクションでemail指定した投稿先ページでのみ使用できます。ordercomplete.aspaction="ordercomplete.asp"

ではordercomplete.asp、 を使用してフォーム フィールドの値を取得できますRequest.Form("email")

于 2013-07-01T07:05:24.863 に答える
0

AspNet テキスト ボックスの入力を変更します。入力ボタンを AspNet ボタンに変更します。OnClick イベントのハンドラーを追加します。そこで、テキスト ボックスからセッション オブジェクトに電子メールを明示的に追加します。次のコードはテストされていないため、使用する前に確認してください

protected void MyButton_Click(object sender, EventArgs e){
    Session.Add(txtEmail.Text);
    Response.Redirect("~/MyOtherPage.aspx");
}
于 2013-06-28T18:02:32.833 に答える