Delphi Indy控件实现网络验证与asp通信


本文整理自网络,侵删。

 unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, OleCtrls, SHDocVw, StdCtrls, ComCtrls, IdBaseComponent,
IdComponent, IdTCPConnection, IdTCPClient, IdHTTP;

type
TForm1 = class(TForm)
Edit1: TEdit;
Button1: TButton;
Label1: TLabel;
state: TStatusBar;
IdHTTP1: TIdHTTP;
Memo1: TMemo;
Label2: TLabel;
Edit2: TEdit;
Button2: TButton;
Label3: TLabel;
Memo2: TMemo;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var
name:String;
password:string;

GetURL :String;
PostURL :String;
GetHtml :String;
sParams :String;
aParams :TStrings;
aStream :TStringStream;
begin

IdHTTP1 := TIdHTTP.Create(nil);
aParams := TStringList.Create;
aStream := TStringStream.Create('');
memo1.Lines.Clear ;
name:=edit1.Text ;
password:=edit2.Text ;
GetURL := 'http://www.delphitop.com/getinfo.asp'; {登录页面网址}
PostURL := 'http://www.delphitop.com/getinfo.asp?password='+password; {提交网址}
sParams := 'name='+name; {提交参数}
try
aParams.Clear;
aParams.Add(sParams);
GetHtml := IdHTTP1.Get(GetURL); {取登录页面}
IdHTTP1.Request.ContentType := 'application/x-www-form-urlencoded';
IdHTTP1.Post(PostURL, aParams, aStream); {提交}
memo1.lines.Add(aStream.DataString);
memo1.SelectAll ;
finally
IdHTTP1.Free;
aParams.Free;
aStream.Free;
end;

end;

procedure TForm1.Button2Click(Sender: TObject);
begin
close();
end;

end.

-----------------------------------------------------GetInfo.asp----------------------------------------

<%@LANGUAGE = VBScript.Encode%>
<!--#include file="conn.asp"-->
<%
dim rs,sql,username,regcode,active,password,founderr,msg
username=trim(request("name"))
password=trim(request("password"))
if username="" then
founderr=true
msg="username参数无效!"
else
founderr=false
end if
if password="" then
founderr=true
msg="password参数无效!"
else
founderr=false
end if

if founderr=true then
response.write msg
else
set rs=Server.CreateObject("ADODB.RecordSet")
sql="select * from reguser where username='"&username&"' and password='"&password&"'"
rs.open sql,conn,1,1
if rs.recordcount>0 then
if trim(rs("regcode"))<>"" then
response.write rs("regcode")
else
response.write "返回的用户注册码无效!"
end if
else
response.write "输入的用户名不存在或者密码无效!"
end if
rs.close
set rs=nothing
end if

call closeconn()
%>

相关阅读 >>

Delphi 简单的字符串加密和解密

Delphi按下esc键就退出程序

Delphi程序升级到64位

Delphi http json 验证token

Delphi tstatusbar 用来显示当前程序状态的

Delphi 一个不错的枚举进程例子

Delphi getrandompassword 生成随机密码

Delphi ttabcontrol控件使用

Delphi 将label的caption内容竖向显示

Delphi xe10 安卓设备信息

更多相关阅读请进入《Delphi》频道 >>



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...