www.gusucode.com > 45:【198-4292】响应式培训招生教育类网站织梦模板(自适应手机端)修正无错版 > 45:【198-4292】响应式培训招生教育类网站织梦模板(自适应手机端)修正无错版/include/helpers/mda.helper.php
<?php if(!defined('DEDEINC')) exit('dedecms'); define('MDA_APIHOST', 'http://ssp.desdev.cn'); define('MDA_JQUERY', MDA_APIHOST.'/assets/js/jquery.min.js'); define('MDA_REG_URL', MDA_APIHOST.'/home/register'); define('MDA_FORGOT_PASSWORD_URL', MDA_APIHOST.'/home/forgot_password'); define('MDA_UPDATE_URL', MDA_APIHOST.'/home/update'); define('MDA_API_BIND_USER', MDA_APIHOST.'/api_v1/dedecms/bind_user'); define('MDA_API_LOGIN', MDA_APIHOST.'/api_v1/dedecms/login'); define('MDA_API_CHECK_LOGIN', MDA_APIHOST.'/api_v1/dedecms/check_login'); define('MDA_API_GET_PLACE', MDA_APIHOST.'/api_v1/dedecms/get_place'); define('MDA_VER', '0.0.1'); function mda_http_send($url, $limit=0, $post='', $cookie='', $timeout=15) { $return = ''; $matches = parse_url($url); $scheme = $matches['scheme']; $host = $matches['host']; $path = $matches['path'] ? $matches['path'].(@$matches['query'] ? '?'.$matches['query'] : '') : '/'; $port = !empty($matches['port']) ? $matches['port'] : 80; if (function_exists('curl_init') && function_exists('curl_exec')) { $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $scheme.'://'.$host.':'.$port.$path); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); if ($post) { curl_setopt($ch, CURLOPT_POST, 1); $content = is_array($post) ? http_build_query($post) : $post; curl_setopt($ch, CURLOPT_POSTFIELDS, urldecode($content)); } if ($cookie) { curl_setopt($ch, CURLOPT_COOKIE, $cookie); } curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout); curl_setopt($ch, CURLOPT_TIMEOUT, 900); $data = curl_exec($ch); $status = curl_getinfo($ch); $errno = curl_errno($ch); curl_close($ch); if ($errno ) { return; } else { return !$limit ? $data : substr($data, 0, $limit); } } if ($post) { $content = is_array($post) ? urldecode(http_build_query($post)) : $post; $out = "POST $path HTTP/1.0\r\n"; $header = "Accept: */*\r\n"; $header .= "Accept-Language: zh-cn\r\n"; $header .= "Content-Type: application/x-www-form-urlencoded\r\n"; $header .= "User-Agent: ".@$_SERVER['HTTP_USER_AGENT']."\r\n"; $header .= "Host: $host:$port\r\n"; $header .= 'Content-Length: '.strlen($content)."\r\n"; $header .= "Connection: Close\r\n"; $header .= "Cache-Control: no-cache\r\n"; $header .= "Cookie: $cookie\r\n\r\n"; $out .= $header.$content; } else { $out = "GET $path HTTP/1.0\r\n"; $header = "Accept: */*\r\n"; $header .= "Accept-Language: zh-cn\r\n"; $header .= "User-Agent: ".@$_SERVER['HTTP_USER_AGENT']."\r\n"; $header .= "Host: $host:$port\r\n"; $header .= "Connection: Close\r\n"; $header .= "Cookie: $cookie\r\n\r\n"; $out .= $header; } $fpflag = 0; $fp = false; if (function_exists('fsocketopen')) { $fp = fsocketopen($host, $port, $errno, $errstr, $timeout); } if (!$fp) { $context = stream_context_create(array( 'http' => array( 'method' => $post ? 'POST' : 'GET', 'header' => $header, 'content' => $content, 'timeout' => $timeout, ), )); $fp = @fopen($scheme.'://'.$host.':'.$port.$path, 'b', false, $context); $fpflag = 1; } if (!$fp) { return ''; } else { stream_set_blocking($fp, true); stream_set_timeout($fp, $timeout); @fwrite($fp, $out); $status = stream_get_meta_data($fp); if (!$status['timed_out']) { while (!feof($fp) && !$fpflag) { if (($header = @fgets($fp)) && ($header == "\r\n" || $header == "\n")) { break; } } if ($limit) { $return = stream_get_contents($fp, $limit); } else { $return = stream_get_contents($fp); } } @fclose($fp); return $return; } } function mda_get_setting($skey, $time=false, $real=false) { global $dsql; static $setting = array(); $skey=addslashes($skey); if (empty($setting[$skey]) || $real) { $row = $dsql->GetOne("SELECT * FROM `#@__plus_mda_setting` WHERE skey='{$skey}'"); $setting[$skey]['svalue']=$row['svalue']; $setting[$skey]['stime']=$row['stime']; } if (!isset($setting[$skey])) return $time ? array() : null; if ( $skey == 'channel_uuid' AND empty($setting[$skey]['svalue']) ) return '58b78319a0efe'; if ( $skey == 'channel_secret' AND empty($setting[$skey]['svalue']) ) return 'lDQ97LIb4NXwCV2z'; return $time ? $setting[$skey] : $setting[$skey]['svalue']; } function mda_set_setting($skey, $svalue) { global $dsql; $stime=time(); $skey=addslashes($skey); $svalue=addslashes($svalue); $sql="UPDATE `#@__plus_mda_setting` SET svalue='{$svalue}',stime='{$stime}' WHERE skey='{$skey}' "; $dsql->ExecuteNoneQuery($sql); } function mda_check_islogin() { global $dopost; $jquery_url = MDA_JQUERY; $mda_login=MDA_API_CHECK_LOGIN; echo <<<EOT <script type="text/javascript" src="{$jquery_url}"></script> <script type="text/javascript"> (function($){ $.ajax({ type: "GET", url: "{$mda_login}", dataType : 'jsonp', jsonpCallback:"callfunc", success: function(msg){ if(msg.code != 0){ window.location.href='?dopost=login&nomsg=yes&forward={$dopost}'; //console.log( msg ); } } }); })(jQuery) </script> EOT; //exit; } function mda_islogin() { if(empty($_SESSION['mda_email'])) { return FALSE; } $email = mda_get_setting('email'); $channel_uuid = mda_get_setting('channel_uuid'); $channel_secret = mda_get_setting('channel_secret'); if(empty($email) OR empty($channel_uuid) OR empty($channel_uuid)) { return FALSE; } return TRUE; } ?>