分类 program 下的文章







学习到 thinkphp 建立一个小实例,就从网上找了一篇文章,本身 thinkphp 是有官网实例的,但老是出错,下面这篇文章还不错,算是最基础的了,从配置文件到连接数据库,然后再到制作模板,读取模板,还有新建 mysql 数据库,都比较详细,thinkphp 底层核心文件不变,如果刚学习可以参照着学习一下。

阅读全文


Python下缩进以空格键实现,4个空格一个缩进
但有些人是使用了Tab键来进行缩进!!!错误原因所在



<?php
function customError($errno, $errstr, $errfile, $errline)
{ 
echo "<b>Error number:</b> [$errno],error on line $errline in $errfile<br />";
die();
}
set_error_handler("customError",E_ERROR);
$getfilter="'|(and|or)\\b.+?(>|<|=|in|like)|\\/\\*.+?\\*\\/|<\\s*script\\b|\\bEXEC\\b|UNION.+?SELECT|UPDATE.+?SET|INSERT\\s+INTO.+?VALUES|(SELECT|DELETE).+?FROM|(CREATE|ALTER|DROP|TRUNCATE)\\s+(TABLE|DATABASE)";
$postfilter="\\b(and|or)\\b.{1,6}?(=|>|<|\\bin\\b|\\blike\\b)|\\/\\*.+?\\*\\/|<\\s*script\\b|\\bEXEC\\b|UNION.+?SELECT|UPDATE.+?SET|INSERT\\s+INTO.+?VALUES|(SELECT|DELETE).+?FROM|(CREATE|ALTER|DROP|TRUNCATE)\\s+(TABLE|DATABASE)";
$cookiefilter="\\b(and|or)\\b.{1,6}?(=|>|<|\\bin\\b|\\blike\\b)|\\/\\*.+?\\*\\/|<\\s*script\\b|\\bEXEC\\b|UNION.+?SELECT|UPDATE.+?SET|INSERT\\s+INTO.+?VALUES|(SELECT|DELETE).+?FROM|(CREATE|ALTER|DROP|TRUNCATE)\\s+(TABLE|DATABASE)";
function StopAttack($StrFiltKey,$StrFiltValue,$ArrFiltReq){  
if(is_array($StrFiltValue))
    $StrFiltValue=implode($StrFiltValue);
if (preg_match("/".$ArrFiltReq."/is",$StrFiltValue)==1){   
   error_log("IP: ".$_SERVER["REMOTE_ADDR"].": ".strftime("%Y-%m-%d %H:%M:%S").":".$_SERVER["PHP_SELF"].": ".$_SERVER["REQUEST_METHOD"].": ".$StrFiltKey.": ".$StrFiltValue."\n",3, "XundaslSqlSafe-".date("Y-m-d", time()).".log");
   echo "警告:非法操作!";
   exit();
}      
}  
foreach($_GET as $key=>$value)
        StopAttack($key,$value,$getfilter);
foreach($_POST as $key=>$value) 
        StopAttack($key,$value,$postfilter);
foreach($_COOKIE as $key=>$value)
        StopAttack($key,$value,$cookiefilter);
?>


来自老赵茶馆:使用PHP方式切换CSS样式

CSS-Style-Switcher地址:Github

效果就是我网站的右上角的皮肤切换按钮,网上切换CSS样式的教程其实很多,但都是以js的方式切换的,就是说虽然有cookie效果,但每次都要加载这段js,甚至有时出现延迟闪烁的问题,我的Teahouse就是使用js的ajax方式的。我后来谷歌了一下,找到了使用PHP方式切换CSS样式,效果更理想些,可惜每次都要刷新。

先看看作者的概述:
一个简单的切换CSS样式的PHP脚本,支持一次多个CSS文件,具有默认的CSS文件的支持,更多等等,一个漂亮整洁的脚本而且比JavaScript更稳定的解决方案。

功能

无须PHP知识,不用安装,只需把这个脚本拖放到你的CSS文件夹,并且确保你的服务器支持PHP
只有一个HTML文件的情况下,通过多个CSS文件来理想的展示你工作。
比JavaScript模式更快,而且就算浏览器没开启js支持也没问题
自动定义以下顺序的一个或多个默认的CSS文件:
自动寻找default_1.css和default_2.css作为默认样式
假如寻找不到默认样式,即按字母寻找第一个CSS文件
使用链接来改变CSS样式,设置Cookie为1小时,然后重定向到最后一页。如果上次访问页面无法找到(HTTP_REFERER)PHP脚本将重定向到网站的索引。

使用

在头部引入脚本

<link rel="stylesheet" type="text/css" href="css/switch.php">

把你的css样式文件都放到PHP脚本的同一目录下
通过链接改变CSS样式

<a href=”css/switcher.php?style=another_1.css”>其它样式</a>





from php定位当前用户城市
今天上网浏览,看到了淘宝有个ip库,可供查询ip对应的地理位置,于是就想测试下。下面是代码。

<?php
$user_IP = ($_SERVER["HTTP_VIA"]) ? $_SERVER["HTTP_X_FORWARDED_FOR"] : $_SERVER["REMOTE_ADDR"];
$user_IP = ($user_IP) ? $user_IP : $_SERVER["REMOTE_ADDR"];
$URL='http://ip.taobao.com/service/getIpInfo.php?ip='.$user_IP;
$fcontents = file_get_contents("$URL");
$contents=json_decode($fcontents);
 ?>
 <html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>pr查询</title>
</head>
<body style="text-align:center;margin:200px auto;font-size:25px">     
 
    <?php
     echo '您来自: '.$contents->data->country.$contents->data->area.$contents->data->region.$contents->data->city.'  ip为'.$contents->data->ip;
     ?>
 
</body>
</html>

欢迎测试:php定位当前用户城市


安装JDK配置设置环境变量:
在“我的计算机”右键“属性”进“高级系统设置”进“环境变量”:
在“系统变量”中“新建”:
变量名:JAVA_HOME
变量值:C:\Program Files\Java\jdk1.8.0_60
在“用户变量”中“新建”:
变量名:PATH
变量值:%JAVA_HOME%\bin
在“用户变量”中“新建”:
变量名:CLASS_PATH
变量值:%JAVA_HOME%\lib
测试:win+R输入cmd
java回车
javac回车
第一个JAVA程序
public class Test{

public static void main(String[] args){
    System.out.println("Hello,JAVA");
}

}
win+R:cmd
cd 到test.java目录下
javac test.java
生成test.class
java test