php表单双引号JSON交互

php 提交的表单中有双引号,单引号

可用stripslashes($string) 函数处理,处理之后可以正常的在非转义条件下使用。

尤其是当json数据和php交互时,以一个简单的交互为例:

//将简单的javascript hash Object转为json字符串 function simpleJSON (obj){ var jsonattr=[]; for (var i in obj) { if (obj.hasOwnProperty(i)) { jsonattr.push(‘”‘+i+'”:”‘+obj[i]+'”‘); } } return ‘{‘+jsonattr.join(‘,’)+’}'; } var jsonParam={}; jsonParam.name=”张三”; jsonParam.sex=”未知”; jsonParam.age=”-100″; $.ajax({ url : request_url.php data : ‘jsonParam=’+twinium.tool.simpleJSON(jsonParam), async : false, success : function(txt) {alert(“执行成功”);} });

上面运用的代码与request_url.php 交互,在php端需要将得到的jsonParam参数处理一下:

$jsonParam=stripslashes($_GET[‘jsonParam’]); $josnObj=json_decode($jsonParam); var_dump($jsonObj); //可以看到已经成功解析JSON . . . → Read More: php表单双引号JSON交互

win2003 apache2.2.17 php5.3配置

Win2003 安装 apache 2.2.17 + php5.3.4 或5.3.6 +  Mysql 配置

Aapache安装

apache-2.2.17 下载地址 :http://httpd.apache.org/download.cgi   , http://www.apache.org/dist//httpd/binaries/win32/

版本选择httpd-2.2.17-win32-x86-no_ssl.msi (openssl多了个ssl安全认证模式,它的协议是HTTPS而不是HTTP,无特殊ssl连接需要下载no_ssl的版本即可)。

安装:一路next 下去 填写 network domain、server domain 一般填“localhost”即可,管理员邮箱随便填一个邮箱就可以(以后服务器出现问题,会提示联系管理员邮箱,方便处理问题。)

安装成功:一般安装结束时会请求是否开启apache服务,可以确定开启,自动打开Apache Service Monitor 同时在电脑右下角的任务栏里有一个绿色的apache服务器运行图标,显示为”>” 启动状态,此时可以本地打开浏览器输入http://localhost 或者 http://127.0.0.1 或者在其他机器上输入 该服务器ip到浏览器访问 http://xx.xx.xx.xx/  可以看到简单的测试页面 “It works” 说明apache已经成功运行。 Continue reading »win2003 apache2.2.17 php5.3配置

mysql(ERROR 1406 (22001): Data too long for column)

MySQL 导入恢复数据库错误

执行命令: mysql -u[username] -p[password] dbname<dbbak.sql

遇到“ERROR 1406 (22001): Data too long for column at ” 某个字段过长,实际上是数据库sql文件中含有UTF8编码 如中文字段内容在Windows下,命令行窗口不支持UTF-8编码,即便使用“set names utf8;”不会达到转化中文的效果。但是这个问题还是可以解决的: (1)使用默认编码建立数据库。这种情况下就可以直接输入中文了,但是相应的问题,就是会失去UTF-8编码的灵活性。特别是不利于软件的国际化。 (2)放弃命令行窗口登录MySQL,使用图形化客户端。客户端工具可以MySQL的官方网站上找到。(比如navicat,mysql GUI tools之类的软件)

实际上sql文件小的话完全可以用phpMyAdmin的导入方式来解决的。对于大文件用上面提到的导入命令,效率比较高。实际上经过尝试,还有第三种解决方案,命令行模式mysql登录到控制台模式,用

source命令来导入 sql文件,很奇怪此时就不会再报错了。唯一不爽的是source 命令会输出一行行的sql执行结果,但在无图形化客户端的情况,仍不失为一个好办法,希望对需要的童鞋有用!

apache Could not reliably determine the server’s fully qualified domain name

“Could not reliably determine the server’s fully qualified domain name”

最近安装完apache,重启APACHE老出现httpd: Could not reliably determine the server’s fully qualified domain name

出现这个错误的原因是:ServerName 没有配置或配置错误的情况下用了系统IP做网站主机IP,而DNS未能配好,本机调试不需要配置DNS的情况下,可以将ServerName 改为localhost 本地环境,就不会请求DNS了

解决方案:

进入apache的安装目录,用记事本打开httpd.conf

将里面的#ServerName www.example.com:80注释去掉即可,,并改成ServerName 127.0.0.1:80。或者 ServerName localhost:80 (80是端口,只要不冲突可以改为其他端口,一般80为默认端口)

再执行httpd

重启APACHE后就不会出现那个提示了.

引入Google Ajax API的jquery库

jquery google API  AjaxAPI 库

调用Google API的代码库,可以有效的减少自己站上的流量。比如Jquery,gzip后有19K,调用Google Api,不仅省去了流量,如果大家的网站都这么做的话,由于缓存原因,很多网站用到的话,就不需要重复加载了,非常节省资源,和加载时间。

采用Ajax动态加载google的API中jquery库的代码是这样的:

google.load(“jquery”, “1.3.2”);//加载jQuery 1.3.2

之所以采用www.google.com.tw(这里也可以更换成其他域名如google.de,google.jp之类的)是因为www.google.com有时会不稳定,就会导致加载此代码的页面打不开。实际上如果你只用到jquery的话,根据firebug(火狐下插件)给出的实际地址,也可以直接向下面这样引入jquery库。

希望对需要的朋友有用。:)