问个发送地址的问题!!!!

我说我行就是行 2011-03-15 12:11:45
发送制定的网页


//发送制定网页
public static string SendWebUrl(string from, string to, string subject, string server, string username, string password, string url)
{
//发送制定网页
return SendHtml(from, to, subject, ScreenScrapeHtml(url), server, username, password);

}


当会员注册的时候,调用方法

  SendWebUrl("我的邮箱", this.txtEmail.Text.Trim(),"", "smtp.163.com", "我的邮箱", "我的密码",Server.MapPath("~/认证.aspx"));

这样写对不???

如果这样写的话


认证.aspx页面

前台
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="认证.aspx.cs" Inherits="认证" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>无标题页</title>
</head>
<body>
<form id="form1" runat="server">
<div>
您好!<br />
<br />
 感谢您在我们网(<a href="http://www.aaa.com)注册帐户">http://www.cp365.com)注册帐户</a>!<br />
<br />
 帐户需要激活才能使用,赶紧激活成为我们正式的一员吧:)

<br />
<br />
点击下面的链接立即激活帐户(或将网址复制到浏览器中打开):<br />
<br />
<asp:LinkButton ID="lnBtn" runat="server" onclick="lnBtn_Click"></asp:LinkButton>
<br />
 </div>
</form>
</body>
</html>




后台:

 protected void Page_Load(object sender, EventArgs e)
{
HttpCookie cookie = Request.Cookies["会员"];
string name = cookie.Values["会员名"];
string email=cookie.Values["邮箱"];
this.lnBtn.Text = "~/userName=" + name + "&userEmail=" + email;
}
protected void lnBtn_Click(object sender, EventArgs e)
{
// 调用方法,修改状态
Server.Transfer("~/index.aspx");
}



现在的问题是,我发送过后,收到邮件是这样了

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="认证.aspx.cs" Inherits="认证" %> 
您好!

感谢您在我们网(<a href="http://www.aaa.com)注册帐户</a>!<
帐户需要激活才能使用,赶紧激活成为我们正式的一员吧:)

点击下面的链接立即激活帐户(或将网址复制到浏览器中打开):

链接也没生成,而且,出现了这个]<%@ Page Language="C#" AutoEventWireup="true" CodeFile="认证.aspx.cs" Inherits="认证" %>

请问怎么修改,就可以变成这样


您好!

感谢您在我们网(<a href="http://www.aaa.com)注册帐户</a>!<
帐户需要激活才能使用,赶紧激活成为我们正式的一员吧:)

点击下面的链接立即激活帐户(或将网址复制到浏览器中打开):

http://链接

...全文
135 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
直接在Login中判断一下就可以了,而且,linkbutton不行,我使用了HyperLink1
(a href应该也可以)
直接这样
this.HyperLink1.NavigateUrl = "http://localhost:2169/WebTest/cc/会员登录.aspx?name=" + name + "&state=1";
this.HyperLink1.Text = "点击这里进行认证";

  protected void Page_Load(object sender, EventArgs e)
{

if (Request.QueryString["state"].Equals("1"))
{
会员DataContext dc = new 会员DataContext();
string name = Request.QueryString["name"].ToString();
会员表 huiyuna = dc.会员表.Where(d => d.用户名 == name).First();
huiyuna.状态 = 1; dc.SubmitChanges();
}
}
strife013 2011-03-15
  • 打赏
  • 举报
回复
SendHtml这个方法有问题,如果参数传入不变的话需要改下SendHtml这个方法,或是直接传送静态html页面试试,html页面可以动态生成
Jack2013tong 2011-03-15
  • 打赏
  • 举报
回复
直接把验证的url带在邮件里发,用户点击即跳转过来验证
yuxh81 2011-03-15
  • 打赏
  • 举报
回复
不知道是不是要被嵌入到ifram中才会正常显示,应该可以参考一下163邮箱的做法
  • 打赏
  • 举报
回复
拼字符串就好了,最好用StringBuilder.Append()
也可以一个邮件样本,在需要动态生成的地方用特殊的标记,比如{Email:Subject}之类的在服务端直接替换,以后需要改邮件时,基本只需要改模板就行了
子夜__ 2011-03-15
  • 打赏
  • 举报
回复
把地址改百度可以么?


这种形式

<a href="javascript:window.open('URL');"></a>,
试下
haojuntu 2011-03-15
  • 打赏
  • 举报
回复
[Quote=引用 13 楼 haojuntu 的回复:]
那你那个地址就应该这样写吧http://localhost:2169/WebTest/login.aspx
[/Quote]
端口号不要加试试http://localhost/WebTest/login.aspx
haojuntu 2011-03-15
  • 打赏
  • 举报
回复
那你那个地址就应该这样写吧http://localhost:2169/WebTest/login.aspx
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 dingzongyinnihao 的回复:]
我现在是这样做的

点击发送的时候,调用的方法

SendWebUrl("邮箱", this.txtEmail.Text.Trim(), "激活链接", "smtp.163.com", "邮箱", "密码","http://localhost:2169/WebTest/认证.aspx?name=" +this.txtName.Text.Trim().ToString());


,……
[/Quote]

看我这代码有问题不???

我只想点击链接,跳到login.aspx页面,可是点击不了,如果点击不了就算了,我复制链接后,这些文字又显示一遍,我只想复制链接后,跳转到login.aspx(如果点击链接不行的话!)
mark620 2011-03-15
  • 打赏
  • 举报
回复
为啥这样搞呢,直接使用发送邮件模版来做吧。
haojuntu 2011-03-15
  • 打赏
  • 举报
回复
把这个http://localhost:2169/WebTest/认证.aspx?name=ffff 复制到url中,还是出现我的认证页面?在邮箱里面单击连接和复制到url中是一个效果啊, 检查一下你要跳转的连接是否有问题。
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 haojuntu 的回复:]
你把那个连接复制到url中看是不是能正常进入页面,qq邮箱和163邮箱就不一样,qq邮箱把里面的一些字符,改变成其它符号。
[/Quote]

复制到地址栏行哎,但是还是出现我的认证页面

您好!

感谢您在我网(http://www.aaa.com)注册帐户!

帐户需要激活才能使用,赶紧激活成为我们正式的一员吧:)

点击下面的链接立即激活帐户(或将网址复制到浏览器中打开):

http://localhost:2169/WebTest/认证.aspx?name=ffff

必须在点击一下链接,才能进入登录页面,


可我不想这样哎,,直接进入邮箱,点击链接,然后跳到登录页面哎,,,,,,,
haojuntu 2011-03-15
  • 打赏
  • 举报
回复
你把那个连接复制到url中看是不是能正常进入页面,qq邮箱和163邮箱就不一样,qq邮箱把里面的一些字符,改变成其它符号。
  • 打赏
  • 举报
回复
我现在是这样做的

点击发送的时候,调用的方法

SendWebUrl("邮箱", this.txtEmail.Text.Trim(), "激活链接", "smtp.163.com", "邮箱", "密码","http://localhost:2169/WebTest/认证.aspx?name=" +this.txtName.Text.Trim().ToString());


,验证的页面.aspx


protected void Page_Load(object sender, EventArgs e)
{

string name = Request.QueryString["name"].ToString();

this.lnBtn.Text = "http://localhost:2169/WebTest/login.aspx?name=" + name;
}

protected void lnBtn_Click(object sender, EventArgs e)
{
会员DataContext dc = new 会员DataContext();
string name = Request.QueryString["name"].ToString();
会员表 huiyuna = dc.会员表.Where(d=>d.用户名==name).First();
huiyuna.状态 = 1; dc.SubmitChanges();
Server.Transfer("login.aspx");
}


我认证页面的代码是这样写的

可是,当我打开邮箱


您好!

感谢您在彩票网(http://www.cp365.com)注册帐户!

帐户需要激活才能使用,赶紧激活成为博客园正式的一员吧:)

点击下面的链接立即激活帐户(或将网址复制到浏览器中打开):

http://localhost:2169/WebTest/认证.aspx?name=ffff

这些都没错,点击链接为什么没有反应呢????????

  • 打赏
  • 举报
回复
[Quote=引用 5 楼 yan267 的回复:]
发送邮件的时候,直接发送拼接的html啊。


C# code
string a=@"<div>您好!<br /><br />帐户需要激活才能使用,赶紧激活成为我们正式的一员吧:)<br />"

string url="<a href="网站链接">点击下面的链接立即激活帐户(或将网址复制到浏览器中打开):</a><br />网站链接"

string a=a+url;

S……
[/Quote]

如果像你这样,那我激活必须得传参数哎,通过用户名或者其他的来把他的状态给修改一下吧!!
yan267 2011-03-15
  • 打赏
  • 举报
回复
发送邮件的时候,直接发送拼接的html啊。

string a=@"<div>您好!<br /><br />帐户需要激活才能使用,赶紧激活成为我们正式的一员吧:)<br />"

string url="<a href="网站链接">点击下面的链接立即激活帐户(或将网址复制到浏览器中打开):</a><br />网站链接"

string a=a+url;

SendEmailToSupplier('aa@aa.com','nn@nn.com','激活',a)
public bool SendEmailToSupplier(string from, string to, string subject, string body)
{
try
{
System.Net.Mail.MailMessage msg = new System.Net.Mail.MailMessage();
msg.From = new System.Net.Mail.MailAddress(from, "XX");
msg.To.Add(to);
msg.Subject = subject;
msg.Body = body;
msg.IsBodyHtml = true;
msg.BodyEncoding = System.Text.Encoding.GetEncoding("GB2312");
msg.Priority = System.Net.Mail.MailPriority.High;
System.Net.Mail.SmtpClient cliect = new System.Net.Mail.SmtpClient("localhost");
cliect.Credentials = new System.Net.NetworkCredential("XXX", "123456");//登陆的邮箱名和密码
cliect.Send(msg);
return true;
}
catch (Exception ex)
{
return false;
}
return false;

}
  • 打赏
  • 举报
回复
请问有谁有注册后,发送网页到邮箱里面的,当点击链接后才可以激活的例子,


谁有啊,请发到我邮箱啊:dingzongyinnihao@163.com

谢谢啊

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧