首 页WAP教程WAP源码WAP电子书客户留言龙腾电脑维修网158网络电视本站论坛繁體中文
设为首页
加入收藏
联系我们
您当前的位置:WAP开发网 -> WAP教程 -> PHP WAP开发教程 -> 文章内容 退出登录 用户管理
栏目导航
· ASP WAP开发教程 · ASP.net WAP开发教程
· PHP WAP开发教程 · WML教程
· JSP开发WAP教程 · WAP 2.0
· 综合杂谈
热门文章
· WAP 2.0教程
· WML语言基础(WAP建站...
· 用VS2005实现ASP.NE...
· [组图] php WAp开发教程
· WML语言基础(WAP建站...
· VS.NET 2003开发移动...
· [图文] ASP技术进行动态WAP...
· [图文] WML语言基础(WAP建站...
· asp.net移动控件开发...
· [图文] 创建移动Web应用程序...
相关文章
· PHP与WAP技术
· php实现wap手机下载...
· 用php实现wap手机下...
· 在PHP的图形函数中显...
· php开发wap常用技巧...
· PHP建立动态的WML站...
· 使用PHP动态输出WML...
· 如何使用PHP来书写动...
· PHP开发WAP常见问题...
· WML,Apache,和 PHP ...
WAP订购管理接口源程序(php版本)
作者:不详  来源:本站整理  发布时间:2006-4-4 14:50:30  发布人:tangyunfei

减小字体 增大字体


WAP订购接口其实很简单,用以前1.5的实现方法http post方式也可以实现。

思路很简单:程序作为http post服务器接收一个xml消息后,对消息体进行解析,进行入库操作(入库操作起不到实际作用,主要是为了对账,你完全可以不处理任何消息,而直接返回一个xml处理成功的包),然后向卓望返回一个处理结果的xml包。

代码供刚入门wap的php程序员学习,附源代码如下:

<?php
ob_start();
$isParseTransactionID=FALSE; //是否解析到
$isParseServiceID=FALSE; //是否解析到服务ID
$isParseMID=FALSE; //否解析到梦网ID
$isDestUser=FALSE; //否解析到普通用户的信息
$isParseActionID=FALSE; //用户操作码
$TransactionID=NULL; //事物ID
$ParseServiceID=NULL; //服务ID
$ParseMID=NULL; //梦网ID
$ParseActionID=NULL;
$ResultID=0; //处理结果。默认为成功
$data=$HTTP_RAW_POST_DATA;
writeFile("1.txt",$data);//写接收内容到文件
$parser=xml_parser_create(); //创建解析器实例
xml_set_element_handler($parser,"startElement","endElement"); //开始和结束时执行,函数自定义的
xml_set_character_data_handler($parser,"characterData"); //数据操作,函数自定义的
xml_parse($parser,$data,true); //解析器实例|数据|是否动送出最后的资料区段
xml_parser_free($parser); //释放解析器,以下进行数据库操作,判断定购关系,并返回给卓望处理结果
include_once "include/mysql.php";
$operator=new MySQL($host,$user,$passwd,$database);
$conn=$operator->Connect();
$SPServiceID="0000000111"; //服务ID
$datatime=date("Y-m-d H:i:s"); //得到当前日期
$sql = "select state from custom where mid ='$ParseMID' and service_id ='$SPServiceID'"; //查找是否定购了服务
$sql1 = "insert into custom values('$SPServiceID','$ParseMID','1','$datatime')"; //插入MID的订购记录
$sql5 = "update custom set state = '1' where mid ='$ParseMID' and service_id ='$SPServiceID'"; //MID取消该服务的订购的状态
$sql2 = "update custom set state = '2' where mid ='$ParseMID' and service_id ='$SPServiceID'"; //MID取消该服务的订购的状态
$sql3 = "update custom set state = '3' where mid ='$ParseMID' and service_id ='$SPServiceID'"; //MID激活该服务的订购状态
$sql4 = "update custom set state = '4' where mid ='$ParseMID' and service_id ='$SPServiceID'"; //暂停服务
switch($ParseActionID)
{
case 1: //开通服务
if(FindServiceID($ParseServiceID))
{//找到serviceid
if(FindMID($ParseMID))
{
$res=$operator->Query($sql,$conn);
$rows=$operator->getRowsTop($res);//取出顶层对象
if($rows[0]==1)//4007: MISC 同步开通服务,但SP 端已存在订购关系,且状态为开通
{
$ResultID = "4007";
}
if($rows[0]==2)
{
$res=$operator->Query($sql5,$conn);
$ResultID = "0";
}
}
else
{//没找到就插入
$operator->Query($sql1,$conn);
$ResultID = "0"; //0 : 成功开通
}
}
else //服务ID错误了
{//4004: 无效的serviceID
$ResultID = "4004";
}
break;




case 2:
if(FindServiceID($ParseServiceID))
{//取消服务,只要找到mid立刻让他取消
if(FindMID($ParseMID))
{
$res=$operator->Query($sql2,$conn);
$ResultID = "0";
}
else
{//4005: 无效的pseudocode
$ResultID = "4005";
}
}
else
{//4004: 无效的serviceID
$ResultID = "4004";
}
break;

[1] [2]  下一页

[] [返回上一页] [打 印] [收 藏]
上一篇文章:ASP的Provsion原代码
下一篇文章:wap中的分页
∷相关文章评论∷    (评论内容只代表网友观点,与本站立场无关!) [更多评论...]
关于本站 - 网站帮助 - 广告合作 - 下载声明 - 友情连接 - 网站地图 - 管理登录
Copyright © 2002-2005 wapkf.com. All Rights Reserved .
浙ICP备06013604号|站长QQ:274273595