添一个手机号程序访问http://www.abkk.com/cn/mobile/index.asp把手机所在地返回我现在就是不知道怎么把这个手机号提交出去,我用的是nmhttp控件,他下面有用的代码
<form  method="POST" action="http://www.abkk.com/cn/mobile/index.asp">
<input type="text" name="tel" >
<input type="submit">
</form>可是我直接post号码不可以,请问谁可以帮忙阿。

解决方案 »

  1.   

    怎么提交才以呢,或者post什么结果呢?
      

  2.   

    BP 短讯
    很多人一定用过 OICQ,想必也用过了它的 BP 机短讯、手机短讯 ,编程的朋友一定想实现这种功能 ,如果你的程序能发到手机、发到 BP 机一定很酷。       现在我就介绍一种可行的方法。      一、原理                它不同于 OICQ 的双方都在网上才能进行交流的寻呼功能 ,它可以将文字信息发送到真正的寻呼机上。只要你能够上网 ,就可以自己动手 ,随时随地将信息发送出去 ,即使你在国外 ,也可以利用它来向国内的友人发送信息了 ,而且不用交纳国际长途费用 ,是不是方便又省事呢!     二、分析                现在网上各寻呼台都有网上服务 ,网页寻呼 (Web Paging) 就是常用的一种。它是通过在互联网上访问寻呼台的主页 ,然后由寻呼台的信息寻呼系统打传呼。所以我们只要利用 HTTP 协议就可以实现网络寻呼了。以下就简单介绍一下 HTTP 协议 :   HTTP 中完成一个会话通常要完成 :1) 客户端程序与服务器建立连接 2) 发送请求 3) 服务器响应客户端 4) 关闭连接    HTTP 常用到的请求有 :1)GET( 请求一万维网页 ) 2)HEAD( 读取一万维网页的头部 ) 3)PUT( 请求一存储万维网页 ) 4)POST( 附加一个命名的资源 ) 5)DELETE( 删除万维网页 ) 6)LINK( 连接两个已有的资源 ) 7)UNLINK( 断开两个已有资源的连接 )   HTTP 中常用到的应答状态代码有 :(* 号代表 0-9 间的一个数 ) 1. 1** ( 信息 ) 2. 2**( 成功 ) 3.4**( 客户端错误 ) 4.5**( 服务器错误 )    其实我们要实现的程序 ,只用 POST 、 GET 请求 ,收到正常应答就可以了。 POST 可以用于把用户输入的数据以数据流的方式传给 CGI 程序 ,CGI 通过 Contect-Length 环境变量来取相应长度的数据流信息。 POST 请求格式如下 :POST http://www2.scuta.edu.cn/stu/chatroom/check.asp HTTP/1.0Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/vnd.ms-powerpoint, application/vnd.ms-excel, application/msword, */*Referer: http://www2.scuta.edu.cn/stu/Accept-Language: zh-cnContent-Type: application/x-www-form-urlencodedProxy-Connection: Keep-AliveUser-Agent: Mozilla/4.0 (compatible; MSIE 5.5; Windows 98)Host: www2.scuta.edu.cnContent-Length: 87Pragma: no-cacheCookie: ASPSESSIONIDQGGGQHHE=ABGNNOJCIGOFCDLBIOLHKAFK服务器正常应答的头部结构为 :  200 OK HTTP/1.0   说明提交数据成功      三、程序的实现              Delphi 中 NMHTTP 已经可以很容易的实现上面的所说的数据提交 ,而且它还支持 Proxy 、这样对于通过代理服务器上网一样可以适用 ,并且它不是 OICQ 中发送讯信所用到 SOCKET5 代理。     新建一个窗体 ,加入组件一个 ComboBox,命名为 callto,用于存放寻呼对象 ,如国信寻呼就有 95908 、 94908 、 94909 、 98062 、 98063 、 98019 、 98035 、 98052 、 98038 、 99055 、 98060 、 98061 、 98051 、 98003 、 99062 、 99016 、 99017 、 99018 、 99019 、 99046 、 99076; 加入组件 Edit,命名为 tonumber,表示寻呼号码 ; 加入组件 RadioGroup,命名为 RadioGroup1,Caption 设为呼机类型 ,items 中加入两项 ,分别为中文机、数字机 ; 加入组件 Edit,命名为 firstName,用于表示发寻呼人的姓 ; 加入组件 RadioGroup,命名为 RadioGroup2,Caption 设为寻呼人性别 ,items 中加入两项 ,分别为先生、小姐 ; 加入组件 Memo,命名为 callmsg,用于输入发送的信息 ( 注 : 对于数字机只能是数字信息 ); 加入组件 NMHTTP,命名为 NMHTTP1; 加入 Checkbox,命名为 ifuseproxy,用于确定是否使用代理服务器 ; 加入两个 Edit 组件 ,分别用于软件代理服务器地址、代理服务器端口 ; 最后加入命令按钮 ,Caption 设为“发送”。 现在以国信寻呼为例 ,它用 GET 请求就可以实现了 ,“发送”按钮的程序代码如下 :procedure TForm1.Button1Click(Sender: TObject);  var callstr:string;begin            callstr:='http://tips.gxspace.com/cgi-bin/tips/webpaging?stn_id='+callto.Text+'&page_no='+tonumber.Text;     case RadioGroup1.ItemIndex of       0:callstr:=callstr+'&pager_type=C';       1:callstr:=callstr+'&pager_type=N';     end;     callstr:=callstr+'&firstname='+firstname.text;     case RadioGroup2.ItemIndex of       0:callstr:=callstr+'&title=0';       1:callstr:=callstr+'&title=1';     end;     callstr:=callstr+'&msg='+callmsg.Text+'&answer=null&B1= 发送寻呼 ';  NMHTTP1.InputFileMode := FALSE;  NMHTTP1.OutputFileMode := FALSE;  NMHTTP1.ReportLevel := Status_Basic;  If ifuseproxy.Checked then  Begin    NMHTTP1.Proxy := Edit1.Text;    NMHTTP1.ProxyPort := StrToInt(Edit2.Text);  End;  NMHTTP1.Get(callstr);end;有些寻呼 ( 如润迅寻呼就不能用上面的 GET 请求实现 ,它要用 POST 请求 ),使用与上面相差不大 ,如下面是 NMHTTP 的 POST 用法 :  NMHTTP1.InputFileMode:=False;  NMHTTP1.OutputFileMode:=True;  NMHTTP1.ReportLevel:=Status_Basic;  If ifuseproxy.Checked then  Begin    NMHTTP1.Proxy := Edit1.Text;    NMHTTP1.ProxyPort := StrToInt(Edit2.Text);  End;  With NMHTTP1.HeaderInfo do  Begin    Cookie := Edit5.Text;    LocalMailAddress := Edit6.Text;    LocalProgram := Edit7.Text;    Referer := Edit8.Text;    UserID := Edit9.Text;    Password := Edit10.Text;  End;//   把要提交的数据先放在 test.txt 文件中 : 格式为 stnid=A&pageno=123456...  NMHTTP1.Post('http://www.wocall.com/script/zbwebcall.asp','test.txt');//NMHTTP 的具体用法在 Delphi 安装目前 \Borland\Delphi5\Demos\FastNet\Http 下有个 NMHTTP 使用的例子。 以上都是用 NMHTTP 实现的 ,其实用 Delphi 中的 WebBrowser 组件同样可以完成数据的提交 ,使用是这样的  Webbrowser1.OleObject.Document.FrontPage_Form1.submit();说明 :WebBrowser1 是 WebBrowser 组件的名 ,Frontpage_Form1 是用 WebBrowser 打开的网页中的表单名 网页中的表单是这机样的 :<FORM name=FrontPage_Form1  action=http://message.com.cn/cgi-bin/ips/webpaging  method=post>......</Form>这样的实现方法就是用程序生成一个已经按用户输入信息生成一个网页 ,然后通过 WebBrowser1.Navigate( 生成的网页 ),最后提交到服务器 Webbrowser1.OleObject.Document.FrontPage_Form1.submit(); 这样就完成了一次寻呼 
      

  3.   

    这篇文章我原来看过,我提交的时候post参数添手机号码,但是返回值并不正确
      

  4.   

    procedure TForm1.Button4Click(Sender: TObject);
    const
     BURL ='http://www.abkk.com/cn/mobile/index.asp';
     TXT ='13978896926';
    var
     H:TStrings;
     H1:String;
    begin
     H:=TStringList.Create;
     H.Add('tel='+TXT);
     H1:=idhttp.Post(BURL,H);
     memo1.Text:=H1;
    end;
    我试过了。用这个可以,但是如果有些网站要读取cookie或者你提交的网页有一个中转的处理页面,我没有办法做到,那个有好的方法贴出来。