有哪位高手能帮小弟我看看这段程序有什么有关问题
发布时间:2010-05-20 14:01:29 文章来源:www.iduyao.cn 采编人员:星星草
有谁能帮我看看这段程序有什么问题
<?php
require($_SERVER["DOCUMENT_ROOT"].'/php/lib/DB.class.php');
session_start();
$db = new DB();
$conn = $db->getConnection();
if( !$conn)
{
$e = oci_error();
trigger_error(htmlentities($e['message'], ENT_QUOTES), E_USER_ERROR);
exit();
}
$sphone = $_POST['tel'];
if( !$sphone ) $sphone = $_GET['tel'];
$linkid = 'F20519DD-3279-4A25-B3F9-645F8A9F49D3';
if(!empty($sphone)&&strlen($sphone)>9)
{
$ip = $_SERVER["REMOTE_ADDR"];
$today =date('Ymd');
$allowTime = 1800;
$callFlg =1;
//查询出ip黑名单
$sql ="select * from t_blacklist where phone=:ip and type=2";
$stmt = oci_parse($conn, $sql);
oci_bind_by_name($stmt, ':ip', $ip);
oci_execute($stmt);
while($row = oci_fetch_array($stmt, OCI_ASSOC+OCI_RETURN_NULLS))
{
if($row['PHONE']==$ip)
{
$callFlg =0;
break;
}
}
if($callFlg==1)
{
//查询出号码黑名单
$sql ="select * from t_blacklist where phone=:phone and type=1";
$stmt = oci_parse($conn, $sql);
oci_bind_by_name($stmt, ':phone', $phone);
oci_execute($stmt);
while($row = oci_fetch_array($stmt, OCI_ASSOC+OCI_RETURN_NULLS))
{
if($row['PHONE']==$phone)
{
$callFlg =0;
break;
}
}
}
oci_free_statement($stmt);
$wap_sql="insert into t_wap_gtel (gtel,createdate) values (:gtel,sysdate)";
$wap_stmt = oci_parse($conn, $wap_sql);
oci_bind_by_name($wap_stmt, ':gtel', $sphone);
oci_execute($wap_stmt);
oci_free_statement($wap_stmt);
//非黑名单号码 半个小时内允许同一号码呼叫一次
if($callFlg==1)
{
//数据库判断
$sql="select to_char(max(call_time),'yyyy-mm-dd hh24:mi:ss') calltime
from t_gtel_log where call_date=:callDate and phone=:phone ";
$stmt = oci_parse($conn, $sql);
oci_bind_by_name($stmt, ':callDate',$today);
oci_bind_by_name($stmt, ':phone', $sphone);
oci_execute($stmt);
if($row = oci_fetch_array($stmt, OCI_ASSOC+OCI_RETURN_NULLS))
{
$sql2="select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') now from dual ";
$stmt2 = oci_parse($conn, $sql2);
oci_execute($stmt2);
$timeNow=time();
if($now = oci_fetch_array($stmt2, OCI_ASSOC+OCI_RETURN_NULLS))
$timeNow=$now['NOW'];
oci_free_statement($stmt2);
if((strtotime($timeNow)-strtotime($row['CALLTIME']))>$allowTime)//超过半个小时可以再次呼叫
{
//绿线呼叫
$objSoapClient = new SoapClient("http://soa.10101010.cn/linksoa/PublicService.asmx?wsdl");
$chkCode = "igogtel"; //md5的合成码,固定值
$strMD5 = strtoupper( md5($linkid.$phone.$chkCode) );
$param["linkid"] = $linkid;
$param["phone"] = $phone;
$param["md5"] = $strMD5;
$xml=$objSoapClient->__Call('PublicCall2Link',array('paramters'=>$param));
if(!$xml) $callFlg=2;
}else{
$callFlg=0;
}
//呼叫Log记录
$log_sql ="insert into t_gtel_log (phone,call_time,state,call_date) values (:phone,systimestamp,:state,:callDate)";
友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。
其他相似内容:
-
paper ocp,明天去复试,oracle还能捡起来吗?
想起了上次面试的某些细节:
技术主管问我:你对集群怎么看?
我说:集群就是节点的集合,将海量...
-
高分寻 oracle 锁机制 并行插入表数据数量的控制方法?
要求原因:团购活动,很火爆,很多进程同时团购。如何在数据库级别加锁或触发器动...
-
辞职,散分,收祝福!!
辞去了原来的开发工作,本来浑浑噩噩的活着,但是现在才知道有目标的人是多么快乐。虽然为原公司扣工资的事情感到伤...
-
Solaris上已经安装了Oracle,版本10.2.0.1供大家学习使用。(现已迁移为RAC环境)
Solaris上已经安装了Oracle,版本10.2.0.1供大家学习...
-
长沙Oracle DBA行情怎么样?
三年数据库开发,两年DBA在长沙能混到多少两银子一月?
各位有知道的说下,不知道的帮忙顶下
------解...
-
有谁能帮我看看这段程序有什么问题
<?php
require($_SERVER["DOCUMENT_ROOT"].'/php/lib/DB.class.php');
session_start()...
-
生星散分!
生星散分!
------解决方案--------------------
大牛丫,我才俩三角
------解决方案--------------------
坚持就是胜利...
-
oracle 技术QQ群:14840532,欢迎交流
欢迎交流
------解决方案--------------------
jf.......................
------解决方案--...
-
新人的IT之路为什么这么难走走,求哥哥姐姐指点迷津。
哥哥姐姐好,我是一名热爱IT职业的新人,10年大学毕业。 大学的时候就特别喜欢IT...
-
oracle版本,我想买本书
请问现在oracle哪个版本用的比较多?我想买本oracle的书看看,不知道买哪个版本好。
------解决方案---------...