增加一个路径为feedback的动作项,其代码如下:
Var
Count:integer;
S:string;
Begin
Query1.close;
Query1.sql.clear;
S:=’select count(username) from user.dbswheresusername=”’;
S:=s+request.contentfields.values[‘username’]+’”’;
S:=s+’and password=”’;
S:=s+request.contentfields.values[‘psword’]+’”’;
Query1.sql.add(S);
Query1.open;
If query1.count=0 then response.content:=
’<html><head><title>
</title>
<body>用户名、密码不正确,请重新输入</body>
</html>’
Else
Username:=request.contentfields.values[‘username’];
Response.content:=pageproducer1.content;
End; |
再增加一个路径为Sendmail的动作项,它的程序代码如下:
Var body:string;
Begin
Flag:=true;
body:=request.contentfields.values[‘body’];
Pageproducer1.htmldoc.clear;
Pageproducer1.htmldoc.add(‘< html >< body >’);
Nmsmtp1.postmessage.clear;
Nmsmtp1.postmessage.fromaddress:=username+’@netease.com’;
Nmsmtp1.postmessage.from:=username;
Nmsmtp1.postmessage.body.add(body);
Nmsmtp1.postmessage.toaddress.add(request.contentfields.values[‘toaddress’]);
Nmsmtp1.postmessage.subject:=request.contentfields.values[‘subject’];
Nmsmtp1.connect;
If flag=true then
begin
Nmsmtp1.sendmail;
nmsmtp1.disconntent;
end
pageproducer1.htmldoc.add(‘</body></html>’);
response.content:=pageproducer1.content;
end; |
增加nmsmtp1的OnConnect事件添加如下代码:
pageproducer1.htmldoc.add('<p>已经和发送邮件服务器连接</p>');
在NMSMTP1的Connection事件添加如下代码:
flag:=false;
pageproducer1.htmldoc.add('<p>连接失败</P>'); |
将project存为sendmail.dpr,编译后放到Web服务器的可执行文件路径下(如:c:\intpub\scripts),即可响应HTML文件dl.htm的用户输入,并且如果用户的用户名及密码正确,则可进入发送邮件的页面。用户填写接受邮件地址及主题、内容后,即可发送邮件。此程序在NT Server上调试通过。
上一页 [1] [2]