php 读取 sogourank 与 ChinaRank信息
function sogouRank($domain)
{
$rank = '';
$pr = 0;
$content = get_content('http://www.sogou.com/web?query='.$domain);
if(preg_match("/</span>([0-9]{1,})</dd>/", $content, $matches))
{
$pr = intval($matches[1]);
$width = ceil(65*$pr/100);
$rank = '<img src="./images/sg_left.gif" width="2" height="11" /><img src="./images/sg_left_img.gif" width="'.$width.'" height="11" /><img src="./images/sg_right_img.gif" width="'.(65-$width).'" height="11" /><img src="./images/sg_right.gif" width="2" height="11" />';
}
$rank = '<a href="http://www.sogou.com/web?query=link%3A'.$domain.'" target="_blank" title="搜狗Rank:'.$pr.'">'.$rank.'</a> '.$pr;
return $rank;
}
function ChinaRank($domain)
{
$rank = '';
$content = get_content('http://www.chinarank.org.cn/detail/Info.do?url='.$domain);
if(preg_match("/<strong>排名</strong>(.*)</tr>/", $content, $matches))
{
$p = trim(str_replace('</td>', '', $matches[1]));
$p = explode("<td>", $p);
if(isset($p[1])) $rank.= ' 今日:'.$p[1];
if(isset($p[2])) $rank.= ' 本周:'.$p[2];
if(isset($p[3])) $rank.= ' 三月:'.$p[3];
}
$rank = '<a href="http://www.chinarank.org.cn/detail/Info.do?url='.$domain.'" target="_blank">'.$rank.'</a>';
return $rank;
}
<?php
/*
* Explorer! 函数库
* 编写日期:2008-06-29
* 最后更新:2008-07-18 2:08
*
*/
class System{//系统部分
function usr_level($name){
$SQL = new MySQL();
$SQL->Query("SELECT `level` FROM `members` WHERE `username` = '$name';");
$SQL->NextRecord();
$TMP = $SQL->GetRecord('level');
$SQL->Free();
return $TMP;
}
function channel_level($cid){
$SQL = new MySQL();
$SQL->Query("SELECT `level` FROM `channels` WHERE `id` = $id;");
$SQL->NextRecord();
$TMP = $SQL->GetRecord('id');
$SQL->Free();
return $TMP;
}
function uid2name($uid){
$SQL = new MySQL();
if($SQL->Query("SELECT `username` FROM `members` WHERE `uid` = $uid;")){
$SQL->NextRecord();
$TMP = $SQL->GetRecord('username');
$SQL->Free();
return $TMP;
}else{
return 0;
}
}
function name2uid($name){
$SQL = new MySQL();
if($SQL->Query("SELECT `uid` FROM `members` WHERE `username` = '$name';")){
$SQL->NextRecord();
$TMP = $SQL->GetRecord('uid');
$SQL->Free();
return $TMP;
}else{
return 0;
}
}
function sysinfo($Name){//获取系统信息
$SQL = new MySQL();
$SQL->Query("SELECT * FROM `sysinfo`;");
$SQL->NextRecord();
$TMP = $SQL->GetRecord($Name);
$SQL->Free();
return $TMP;
}
function find_member($name){//查找该用户(注册时需要)
$SQL = New MySQL();
$SQL->Query("SELECT * FROM `members` WHERE `username` = '$name';");
$RS = $SQL->RowS();
$SQL->Free();
if($RS)
return 1;
else
return 0;
}
function str_safe($str){//字符串安全过滤
$str = str_replace($str,";",";");
$str = str_replace($str,"'","‘");
$str = str_replace($str,"/","/");
$str = str_replace($str,"`","`");
$str = str_replace($str,"\","\");
return $str;
}
function GetMyIP()
{
if ($HTTP_SERVER_VARS["HTTP_X_FORWARDED_FOR"])
$ip = $HTTP_SERVER_VARS["HTTP_X_FORWARDED_FOR"];
elseif ($HTTP_SERVER_VARS["HTTP_CLIENT_IP"])
$ip = $HTTP_SERVER_VARS["HTTP_CLIENT_IP"];
elseif ($HTTP_SERVER_VARS["REMOTE_ADDR"])
$ip = $HTTP_SERVER_VARS["REMOTE_ADDR"];
elseif (getenv("HTTP_X_FORWARDED_FOR"))
$ip = getenv("HTTP_X_FORWARDED_FOR");
elseif (getenv("HTTP_CLIENT_IP"))
$ip = getenv("HTTP_CLIENT_IP");
elseif (getenv("REMOTE_ADDR"))
$ip = getenv("REMOTE_ADDR");
else
$ip = "127.0.0.1";
return $ip;
}
function Version(){
return "1.0.9";
}
}
class MySQL{//数据库部分
var $DBServer = 'localhost';//服务器
var $DBName = '';//数据库名称
var $DBUser = '';//数据库用户
var $DBPass = '';//数据库密码
var $OnErrorResume = 1;//错误提示关闭
var $LinkID = 0;//连接句柄
var $QueryID = 0;//查询句柄
var $ResultS = array();//查询结果集
var $Error = '';//错误信息
function Connect($Srv = "",$Usr = "",$Pass = "",$DB = ""){//连接数据库
if($Srv == "") $Srv = $this->DBServer;
if($Usr == "") $Usr = $this->DBUser;
if($Pass == "") $Pass = $this->DBPass;
if($DB == "") $DB = $this->DBName;
if($this->LinkID == 0){
$this->LinkID = @mysql_connect($Srv,$Usr,$Pass) or die("数据库连接失败,请联系管理员修复此问题。");
}
@mysql_select_db($DB,$this->LinkID) or die("数据库选择失败,请联系管理员修复此问题。");
return $this->LinkID;
}
function Free(){//释放查询结果
@mysql_free_result($this->QueryID);
$this->QueryID = 0;
}
function RowS(){//查询到的记录总数
if(!$this->QueryID) return 0;
return @mysql_num_rows($this->QueryID);
}
function NextRecord(){//下一条记录
if(!$this->QueryID) return 0;
$this->ResultS = @mysql_fetch_array($this->QueryID);
}
function Seek($seek){
if(!$this->QueryID) return 0;
@mysql_data_seek($this->QueryID,$seek);
}
function Query($Sql){//执行查询
if($Sql == "") return 0;
if($this->LinkID == 0) $this->Connect();
if($this->QueryID) $this->Free();//释放原来查询结果
$this->QueryID = @mysql_query($Sql,$this->LinkID);
$this->Error = mysql_error($this->LinkID);
if(!$this->QueryID) exit("$Sql执行失败.");
return $this->QueryID;
}
function GetRecord($Name){
if(!$this->QueryID) return 0;
return $this->ResultS[$Name];
}
}
?>
function Alexa($domain)
{
$alexa = '';
$content = get_content('http://www.alexa.com/data/details/traffic_details?url='.$domain);
if(preg_match("/3 mos. Change([sS]*?)</table>/", $content, $matches))
{
$change = strpos($matches[1], 'down_arrow.gif') ? '下降' : '上升';
$p = strip_tags($matches[1], '<td>');
$p = trim(str_replace(array(" ", "n", "</td>"), array('', '', ''), $p));
$p = explode("<td>", $p);
if(isset($p[1])) $alexa.= ' 今日:'.$p[1];
if(isset($p[2])) $alexa.= ' 本周:'.$p[2];
if(isset($p[3])) $alexa.= ' 本月:'.$p[3];
if(isset($p[4])) $alexa.= ' '.$change.':'.$p[4];
}
if(preg_match("/Review for $domain:</span> (.*)<br>/", $content, $matches))
{
$alexa = $alexa.' 等级:'.$matches[1];
}
$alexa = '<a href="http://www.alexa.com/data/details/traffic_details?url='.$domain.'" target="_blank">'.$alexa.'</a>';
return $alexa;
}
function get_content($url)
{
if(!strpos($url, '://')) return 'Invalid URI';
$content = '';
if(ini_get('allow_url_fopen'))
{
$content = file_get_contents($url);
}
elseif(function_exists('curl_init'))
{
$handle = curl_init();
curl_setopt($handle, CURLOPT_URL, $url);
curl_setopt($handle, CURLOPT_CONNECTTIMEOUT, 5);
curl_setopt($handle, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($handle, CURLOPT_FOLLOWLOCATION, 0);
$content = curl_exec($handle);
curl_close($handle);
}
elseif(function_exists('fsockopen'))
{
$urlinfo = parse_url($url);
$host = $urlinfo['host'];
$str = explode($host, $url);
$uri = $str[1];
unset($urlinfo, $str);
$content = '';
$fp = fsockopen($host, 80, $errno, $errstr, 30);
if(!$fp)
{
$content = 'Can Not Open Socket...';
}
else
{
$out = "GET $uri HTTP/1.1rn";
$out.= "Host: $host rn";
$out.= "Accept: */*rn";
$out.= "User-Agent: $_SERVER[HTTP_USER_AGENT]rn";
$out.= "Connection: Closernrn";
fputs($fp, $out);
while (!feof($fp))
{
$content .= fgets($fp, 4069);
}
fclose($fp);
}
}
if(empty($content)) $content = 'Can Not Open Url, Please Check You Server ... <br/>For More Information, Please Visit www.111cn.net;
return $content;
}
<?php
include_once("inc/connect.php");
stop_outside_post();
$email =php_sava(addslashes(isset($_POST['email'])?$_POST['email']:''));
$mobile =php_sava(addslashes(isset($_POST['mobile'])?$_POST['mobile']:''));
$name =php_sava(addslashes(isset($_POST['name'])?$_POST['name']:''));
$an =php_sava(addslashes(isset($_POST['an'])?$_POST['an']:''));
$ip = get_real_ip();
$time =date("Y-m-d");
if(empty($mobile) || empty($email) || empty($name) || empty($an)){
die('submit=false');
}else{
$tsql = "Select * from lzlj_an where ip='$ip'";
$r = mysql_query($tsql);
if( mysql_num_rows($r) ){
die('submit=false');
}else{
$sql ="Insert into lzlj_an(mobile,email,name,an,ip,dtime) value('$mobile','$email','$name','$an','$ip','$time')";
mysql_query($sql) or die('submit=false');
die('submit=true');
}
}
function php_sava($str)
{
$farr = array(
"/s+/",
"/<(/?)(script|i?frame|style|html|body|title|link|meta|?|%)([^>]*?)>/isU",
"/(<[^>]*)on[a-zA-Z]+s*=([^>]*>)/isU",
);
$tarr = array(
" ",
"<\1\2\3>", //如果要直接清除不安全的标签,这里可以留空
"\1\2",
);
$str = preg_replace( $farr,$tarr,$str);
return $str;
}
function stop_outside_post(){
$ServerName = @$_SERVER['SERVER_NAME'];
$Sub_from = @$_SERVER["HTTP_REFERER"];
$Sub_len = strlen($ServerName);
$Checkfrom = substr($Sub_from,7,$Sub_len);
if($Checkfrom!= $ServerName){
die("警告!你正在从外部提交数据或直接访问c.php文件!请立即终止!!");
}
}
function get_real_ip(){
$ip=false;
if(!empty($_SERVER["HTTP_CLIENT_IP"])){
$ip = $_SERVER["HTTP_CLIENT_IP"];
}
if (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) {
$ips = explode (", ", $_SERVER['HTTP_X_FORWARDED_FOR']);
if ($ip) { array_unshift($ips, $ip); $ip = FALSE; }
for ($i = 0; $i < count($ips); $i++) {
if (!eregi ("^(10|172.16|192.168).", $ips[$i])) {
$ip = $ips[$i];
break;
}
}
}
return ($ip ? $ip : $_SERVER['REMOTE_ADDR']);
}
?>
本站原创www.111cn.net/phper/php.html
相关文章
- 这篇文章主要介绍了C#从数据库读取图片并保存的方法,帮助大家更好的理解和使用c#,感兴趣的朋友可以了解下...2021-01-16
- 这篇文章主要介绍了源码分析系列之json_encode()如何转化一个对象,对json_encode()感兴趣的同学,可以参考下...2021-04-22
- 这篇文章主要介绍了Vue基于localStorage存储信息代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下...2020-11-16
- PHP去除html、css样式、js格式的方法很多,但发现,它们基本都有一个弊端:空格往往清除不了 经过不断的研究,最终找到了一个理想的去除html包括空格css样式、js 的PHP函数。...2013-08-02
- 在php中解析xml文档用专门的函数domdocument来处理,把json在php中也有相关的处理函数,我们要把数据xml 数据存到一个数据再用json_encode直接换成json数据就OK了。...2016-11-25
- index.php怎么打开?初学者可能不知道如何打开index.php,不会的同学可以参考一下本篇教程 打开编辑:右键->打开方式->经文本方式打开打开运行:首先你要有个支持运行PH...2017-07-06
PHP中func_get_args(),func_get_arg(),func_num_args()的区别
复制代码 代码如下:<?php function jb51(){ print_r(func_get_args()); echo "<br>"; echo func_get_arg(1); echo "<br>"; echo func_num_args(); } jb51("www","j...2013-10-04- 这篇文章主要介绍了c# 如何对CSV文件操作,帮助大家更好的理解和学习C#,感兴趣的朋友可以了解下...2020-11-03
- 本文主要介绍了python读取和保存mat文件的方法,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2021-08-25
- 这篇文章主要介绍了PHP编程 SSO详细介绍及简单实例的相关资料,这里介绍了三种模式跨子域单点登陆、完全跨单点域登陆、站群共享身份认证,需要的朋友可以参考下...2017-01-25
- 这篇文章主要介绍了PHP实现创建以太坊钱包转账等功能,对以太坊感兴趣的同学,可以参考下...2021-04-20
- 首先如果要在程序中使用sdcard进行存储,我们必须要在AndroidManifset.xml文件进行下面的权限设置: 在AndroidManifest.xml中加入访问SDCard的权限如下: <!--...2016-09-20
C#利用System.Threading.Thread.Sleep即时输出信息的详解
本篇文章是对C#利用System.Threading.Thread.Sleep即时输出信息进行了详细的分析介绍,需要的朋友参考下...2020-06-25- 这篇文章主要介绍了C# 获取硬盘号,CPU信息,加密解密技术的步骤,帮助大家更好的理解和学习c#,感兴趣的朋友可以了解下...2021-01-16
- Redis 是一个开源、高性能的Key-Value数据库,被广泛应用在服务器各种场景中。本文介绍几个查看Redis内存信息的命令,包括常用的info memory、info keyspace、bigkeys等。...2021-01-15
- 这篇文章主要为大家详细介绍了php微信公众账号开发之五个坑,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2016-10-02
- 这篇文章主要介绍了PHP如何通过date() 函数格式化显示时间,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下...2020-11-13
ThinkPHP使用心得分享-ThinkPHP + Ajax 实现2级联动下拉菜单
首先是数据库的设计。分类表叫cate.我做的是分类数据的二级联动,数据需要的字段有:id,name(中文名),pid(父id). 父id的设置: 若数据没有上一级,则父id为0,若有上级,则父id为上一级的id。数据库有内容后,就可以开始写代码,进...2014-05-31- perl CPAN中有一个Tie-File 模块极大方便了对大文件的操作...2020-06-29
使用MSScriptControl 在 C# 中读取json数据的方法
下面小编就为大家带来一篇使用MSScriptControl 在 C# 中读取json数据的方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧...2020-06-25