php 找不到临时文件夹

四月 29th, 2011 没有评论 »

原因是 php.ini   upload_tmp_dir 没有设置临时上传路径

upload_tmp_dir =”../tmp/upload”

相对路径也可以

form enctype 注意事项

四月 29th, 2011 没有评论 »

在做 form表提交时

要用到 enctype 其中有三个选项

multipart/form-data

application/x-www-form-urlencoded

text/plain

其中 

application/x-www-form-urlencoded 会造成input ->file控件不能提交文件.这一点要注意,换成

multipart/form-data 就没有问题.

 

session.save_path 不能使用相对路径

四月 28th, 2011 没有评论 »

php.ini 设置session.save_path 不能使用相对路径,否则会出错,要用绝对路径。路径最好要用分号括住
session.save_path = “E:/server/tmp/session”

phpmyadmin 3.4.0-rc1版本出现问题 http进程死掉

四月 28th, 2011 没有评论 »

今天下载了phpmyadmin 新版本使用,在winxp环境下使用,界面UI更换了,感觉不如以前的使用方便,重点不突出,这个还不是主要问题,问题是如果安装了eaccelerator会出现apache进程会死掉问题,log文件是这样
EACCELERATOR(3416): PHP crashed on opline 145 of mysqli_real_connect() at phpmyadminlibrariesdbimysqli.dbi.lib.php:114。
换回低版本没有问题,深追究也不是phmyadmin问题。

php 单与号的作用

四月 26th, 2011 没有评论 »

&

echo 11& 13;

结果为9;

11 = 00001011(二进制)
13 = 00001101(二进制)

phpadmin MySQL 库版本 和MySQL 服务器版本不同 原因

四月 26th, 2011 没有评论 »
你的 PHP MySQL 库版本 5.0.51a 和你的 MySQL 服务器版本 5.1.51 不同。这可能造成一些未知的问题。
是因为php用的驱动和mysql本身的驱动不同

PHP 显示错误设置

四月 22nd, 2011 没有评论 »

不显示错误:

1
2
error_reporting(0);ini_set('display_errors',false);

显示错误:

1
2
error_reporting(E_ALL);
ini_set('display_errors', true);

zendstudio更改默认workspace路径

四月 21st, 2011 没有评论 »

zendstudio 导航栏  File=>switch workspace

files_exits 判断文件是否存在注意事项

四月 14th, 2011 没有评论 »

今天把系统构架重新设计了一下,路径问题,一下子出来了很多.

原本我把两个文件夹放在统一目录,用files_exit判断,相对路径判断也没什么问题,今天我把其中一个目录更改了,一下子就出了很多关于路径的问题,找不到文件.

开始没有注意到问题所在,本以为是autoloader出问题了,因为我已经设置了set_include_path,怎么能files_exit还找不到.

在搜索的过程中突然看到set_include_path 中的include就恍然大悟了,set_include_path  作用范围是require 和include ,和files_exit没有关系,赶紧加上绝对路径,判断OK.

flash cook问题

四月 13th, 2011 没有评论 »

今天调试做flash 和php通信,其中要用到cook 做认证.怎么也不能提交成功,找到问题如下

cookie处理的bug主要体现在,通过非ie浏览器上传图片时,flash会将ie下的cookie发送到服务器端,从而引起cookie处理混乱。当上传的文件依赖于cookie信息时,就会出现错误的情况。比如,如果要求上传文件的用户必须已经登录,那么,如果ie下没有登录,当前这个非ie浏览器就不能上传文件,岂不是很郁闷。

这种情况的处理其实也就是抓住一点,在上传文件时,通过url将cookie信息传递到服务器端。

一种办法是flash和js取得通信,js将document.cookie信息传递给flash,flash再将信息在url的参数中传递给服务器端。

还有一种办法就是,通过flash控件的flashvars字段给flash传变量。这种办法能保证在客户端js未开启的情况下也能传递cookie信息给flash,还是比较保险的。不过,需要注意的是,cookie字符串中的空格的编码可能会导致最后解析出错。php通过urlencode编码空格时,会转化为%2B,而通过flash解析后,%2B会被解析为+,而不是空格。这有可能导致最后对用户信息的验证失败。

这种情况下的一个技巧就是,使用两次urlencode对cookie信息进行编码,最后flash传递到服务器端时,就能准确地读出原来的值了。