近日做一个网站的投票时,遇到的问题  声明使用的是thinkphp框架做的网站,有一页面上面展示很多图片,要求每个图片下面有对应的投票,通过限制ip地址来,限制游客在一定时间范围内,能对多个图片投票,但是每个图片只能投票一次,开始使用ip存储在数据库解决,后来改进为使用session存储,ip在服务文件里,不过要把生成的sessionid存储在本地的cookie中,按照thinkphp手册说明

标签:

  这几天用TP做项目,突然发现session无法使用了,在一个控制器里设置的session值,然后在另一个控制器里无法调用,纠结啊  不知道哪里的问题,记得自己也没有乱改什么地方,我觉得应该是自己的业务逻辑在哪个地方没有写好,影响了session.最终在网上查了一下,也有人遇到过这样的问题,解决方法是修改php.ini文件,没办法只能死马当活马医了,结果还真行。当然主种方法不是很好,对服务器来说

thinkphp框架中session跨域问题解决方案

  session 跨域,困扰我好几天,今天终于弄明白了!  不管是thinkphp ,还是本身的php  其实都要设置session.cookie_domain  设置好,就OK了  在thinkphp 里,在配置文件里  conf/config.php  第一行:加  ini_set(‘session.cookie_domain', “.domain.com&rdquo

在thinkphp框架中模版如何判断session

  方法很多,灵活运用,例如  1.在模板中调用{$Think.session}  2.在<php></php>标签直接编写php代码来判断$_SESSION  3.在模板中写<?php  ?>,然后在里面直接编写php代码来判断$_SESSION  4.在Action中将$_SESSION变量通过assign()方法赋值给模板  5.在自定义函数库中

标签:

thinkphp的SESSION保存在哪里

  thinkphp的SESSION默认是采用文件缓存的…  采用的是php的缓存。这部分可以自己写,例如把session放到某个cache服务中(redis,memcached)  现在配置文件中开启session,然后在lib的控制器里assign(模版用到的session值时候对应的方法里都得$this->assign()),在tpl输出就可以了。  可以查看TP框架里的

标签:

为Web文档添加样式的方法:智能选择器和语义化的CSS

“结构永远服从于功能,这是不变的法则”,建筑工程师“摩天大楼之父”Louis Sullivan如是说。因为工程师不希望让无辜的人们被碾压在巨大的建筑物下,这种大拇指式的规则是相当有用的。在设计中你应该总是以功能为重,然后让结构在结果中呈现。如果你以结构为重,虽然这能够建造出一栋漂亮的摩天大楼,但代价是埋下了许多相当危险的种子。这些都是关于建筑师的,那

Jquery 实现层的拖动,支持回调函数传递的方法

  最近在写一个CMS内容管理系统,前台基本是用ajax异步请求服务器,通过ashx处理,返回json格式处理。由于需要更加人性化的界面,所以采用到了拖动层的操作。  以下是拖动层的主要核心方法,本来想写成插件的,考虑的没那么多时间,就以方法的方式了。  /*  * Jquery 鼠标左键拖动面板  * coder:新生帝  * obj:jQuery选择器名称  * callback:回调函数(拖

标签:

  同事在制作触屏页面的时候收到产品这样一个需求:“我们的页面为什么点击完textarea框,在点空白处时,iphone的键盘不能隐藏?”  我们就这个问题进行了测试,确实没有隐藏。看了看其它网站的页面,也是有的能隐藏有的不能隐藏。  IPHONE系统在点击document时textarea为什么没有失去焦点?  同样的问题我又在Android系统上测试了一下可以自动隐藏,

用PHP里面的PDFLib扩展库编写PDF文档生成器实例

  php(做为现在的主流开发语言)一个最大的优点就是它对新技术的支持非常容易,这种语言的可扩展性使得开发人员能够很方便地添加新的模块,而且遍布世界的技术团体的支持和众多扩展模块的支持使得php(做为现在的主流开发语言)已经成为功能最齐全的Web编程语言之  一。目前可得到的扩展模块已经能够使开发人员执行IMAP和POP3操作,可以动态产生图象和Shockwave Flash动画,进行信

标签:

使用php的zlib函数压缩和解压缩swf文件的实例

  下面是我写的压缩和结压缩swf文件的例子:  //没有加入判断swf文件是否已经压缩,入需要可以根据文件的第一个字节是F或者C来判断  压缩swf文件:      //文件名  $filename = “test.swf”;  //打开文件  $rs = fopen($filename,“r”);

如何用php里面的file函数直接调用文本文件内容

  如何用php(做为现在的主流开发语言)直接调用文本文件内容:首先通过file函数打开服务器上的一个文本文件,返回的$myFile 就将成为这个文件操作的句柄,然后再通过循环指令,取出文件中每一行的内容并打印出来。  编程思路  首先要使用的函数为file,本函数与 readfile() 类似,不同的地方为 file 函数将文件中的内容全部读出,并输出到数组的变量中、每行都是单独的数组元素。使用

标签:

  数据分页可能是web编程里最常用到的功能之一。thinkphp实现分页功能十分简洁。只需要定义几个参数就能搞定。当然,扩展也是十分方便的。  让我们现在就开始thinkphp的分页实现吧。  1:首先,我们得创建一个用于分页测试的数据库 test.sql代码如下。  [php]  CREATE TABLE `test` (  `id` int(10) unsigned NOT NULL aut
ThinkPHP的分组功能是广为开发者使用的一个功能,可以解决中大型项目情况中MVC分层文件过多导致不易管理的问题。而3.1.2版本添加的独立分组功能则为此类问题提出了新的解决思路,更加适合组件化的开发模式。虽然目前3.1.2版本还未正式发布,不过我们可以先了解下这一功能。概述独立分组功能不影响原有分组模式的运行,并且原有分组模式仅需移动目录结构即可完成独立分组模式的升级,无需任何应用代码的改动。

thinkphp执行流程的一些研究

1. 入口文件index.php用户对url的访问首先被定位到http://<serverIp>/<appName>/index.php, 这里的入口文件index.php做三件事情:1.1, 1.2, 1.31.1 定义或载入全局变量常见的有APP_NAME(项目名称), APP_PATH(项目路径), THINK_PATH(ThinkPHP框架路径);我研究的是Thin

标签:

PHP安全的数据格式:验证有效性

  就PHP的使用范围来说,数据分为接收、存储和展示。接收数据一般就是验证有效性了,无非就是看业务逻辑需要什么样的数据,邮箱格式,身份证格式,复杂密码格式等等。这里根据具体业务写正则或者写逻辑判断就好了。  存储数据时会用到很多类型的DB,考虑SQL防注入的话,可以使用PDO来防注入,简单的来讲就是使用参数绑定而不是拼接字符串就OK了。展示时需考虑可能会出现XSS,这时候看你的数据是用在什么地方,

标签:

我的PHP学习轨迹:善于总结,举一反三

  有人指导当然好了,没有条件的时候自己学也挺好,不过要自己要善于总结,举一反三,就看你的自学能力了。 PHP学起来也不难,多和别人交流,提升的就很快。  1. 看PHP 手册,花三天时间,将手册里面一些基本知识了解下,不一定全部要看懂,但是要求要熟悉,主要的目的是便于查找  2.直接敲代码, 找几个例子,尝试着敲一下,切身感受下 敲键盘的感觉,不要找太长的,只是尝试着能否自己写出来,大概7天  

标签:

PHP框架开发中用Smarty做view出现的问题

我出现的问题是用Smarty_VIew, Zend_Form类无法显示..提示未定义formText()等问题 用Zend_View, Zend_Form类正常显示.Smarty_View是实现了Zend_View_Interface自己是刚接触ZF 正在看手册寻找解决的方法, 同时寻求大家的帮助,谢谢看到有个网友这样提问,手痒痒来回复下:  By default, Zend_Form and Z

标签:

  kindeditor本地上传图片后如何获得上传路径?点击本地上传后想把上传路径存到mysql中方便删除。要怎么才能获得? 个人给出解释,仅供参考  K(‘input[name=getText]’)。click(function(e) {  alert(editor.text());  });  其中editor.text()里面包含图片地址  上传的文件信息可

PHP分页原理详解

  分页是网站上常用的一种信息显示手段,比如网上的评论,有时候会有几百条上千条甚至几十万条,同时在一个页面上显示显然不和实际,所以,我们就要用到分页了。  实现分页需要访问mysql数据库中所存入的数据,所以我们得新建一个数据库,并在数据库中建一个表:  (以上数据是我抽风随便打的,不喜请扔砖)  然后呢,我们再使用EPP3建一个工程,我习惯在工程下新建两个php文件,一个用来连接数据库,一个用来

标签:

ThinkPHP 3.1的PDO封装:ThinkPHP 3.1中的SQL注入漏洞分析

  花了一些时间了解到ThinkPHP 3.1框架,其官方网站上对其描述得相当不错,但随着我阅读其代码,事实并不是想象的那么好,特别是PDO封装这一部分,处理得相当糟糕,远不如使用原生态的PDO安全, 只是简单地使用addslashes处理用户提交的数据,并没有使用到PDO的精髓部分:prepare预处理和参数化查询。这样其实带来的SQL注入的风险更大,建议对安全性要求较高的环境,不要使用adds