清理了WP的数据库,嗯,这感觉好

看了看WordPress的数据库,发现里面保存了很多WordPress自动保存的文章和修订版本的文章,没什么用,又占空间,所以都删掉了,怕出问题,所以直接用了插件,直接在后台插件页面搜索WP Cleaner就可以了。另外想禁用WP的自动保存和保存修订版本文章的功能,试试Super Switch吧。

“iconv() : Detected an illegal character in input string”的解决办法

PHP传给JS字符串用ecsape转换加到url里,又用PHP接收,再用网上找的unscape函数转换一下,这样得到的字符串是UTF-8的,但我需要的是GB2312,于是用iconv转换,开始是这样用的
$str = iconv(‘UTF-8’, ‘GB2312’, unescape(isset($_GET[‘str’])? $_GET[‘str’]:”));
上线后报一堆这样的错:iconv() : Detected an illegal character in input string

考虑到GB2312字符集比较小,换个大的吧,于是改成GBK:
$str = iconv(‘UTF-8’, ‘GBK’, unescape(isset($_GET[‘str’])? $_GET[‘str’]:”));
上线后还是报同样的错! 继续阅读

Apache服务器使用.htaccess实现图片防盗链

      .htaccess文件将影响其所在的目录及其子目录,因此,如果我们要保护的内容位于网站内多个目录下,可以考虑将其放在根目录下;而如果图片有单独的子目录如“/images/”,则只需将其放置在该目录下(当然也可以放到根目录中)。

      需要注意的是,如果通过FTP方式将创建好的.htaccess上传到服务器上,传输模式应为ASCII而非Binary。上传到服务器后,应将其属性通过CHMOD修改为644 或“RW-R–R–”,这样,可以保证服务器能够使用同时无法通过浏览器修改,当然,.htaccess的可读属性也存在一定的风险:攻击者可通过它找出您要保护的对象或认证文件位置——解决办法是将认证文件.htpasswd放到网站根目录之外,这样,便无法通过网络找到它了。
使用.htaccess禁止盗链
继续阅读

又是编码问题。。。

文件保存时的编码问题真头痛,用PHP的Json_encode编码时需要把中文的GBK转换为UTF-8,不然Json_decode解码后出来的是空的。不知怎么的把index.php那个文件的编码改成UTF-8了,这下好了,从别的php文件中下载这个文件里的内容,用Json_decode解码后出来的东西还是解码前的。。。找啊找啊,最后发现直接把index.php输出的东西复制到一个php文件里,在php文件里直接解码,结果正确了,用mb_detect_encoding()发现Json_decode只能解码ASCII编码的字符。。。

哎,编码问题就是这么烦啊,谁叫世界上不同的语言文字这么多呢。 继续阅读

Symbian S60平台JAVA开发环境搭建步骤

花了很长时间,终于成功安装了诺基亚S60的JAVA开发环境,网上介绍的方法不多,有些还有问题,于是就想把过程写出来了,大家可以参考一下。 

1、软件准备

1.1 JDK或者JRE下载

为了运行Eclipse必须安装JRE(当然JDK也可以),这个可以到http://www.oracle.com/technetwork/java/javase/downloads/index.html下载。  

1.2 nS60_jme_sdk_3rd_e_FP1

  

nS60_jme_sdk_3rd_e_FP1是诺基亚官方提供的开发包,正式名称为S60 Platform SDKs for Symbian OS, for Java™,里面包含了模拟器和类库,下载地址是:http://www.forum.nokia.com/info/sw.nokia.com/id/6e772b17-604b-4081-999c-31f1f0dc2dbb/S60_Platform_SDKs_for_Symbian_OS_for_Java.html ,选择“3rd Edition,FP 1(240MB)”下载。下载时会提示登录然后才能下载,如果没有账号,可以注册一个,不过中文注册页面似乎有问题,注册时会提示“地区名无效”,去英文注册页面就可以了,地址为:https://www.forum.nokia.com/Profile/Join.xhtml?locale=en。下载后点击安装包中的setup.exe进行安装。  

1.3 Eclipse下载

   继续阅读

PHP中0和false的区别

今天发现自己弄的那个网址缩短的服务有缺陷,只要长网址没有加上 http:// 就无法成功跳转到目标网址,打算使用strpos()查找 http:// ,如果没有找到,则在网址最前面加上 http:// 。结果在测试的时候,发现不管有没有找到 http:// ,最后都被加上了http://。后来才明白,我是用if(!strpos($url,”http://”))来判断是否存在http://的,如果存在,则这个if不成立,如果不存在,则成立,问题是,当strpos查找到目标字符串时,返回的是目标字符串首次出现的位置,也就是说,即使查到了http://,返回的也是这个字符串开始的位置,也就是0,没有查到,返回的是boolean的false,在php中,两者都表示false,也就是说,不管有没有找到,if都会满足条件而执行,结果是最后都会被加上http://,不管网址中有没有http://。解决的办法很简单,用===全等于这个判断符号,这样,false===0就不会成立了,因为这两个是不同的类型。

XML啊,总算把你解决了,累啊。。。

国庆前那个Android读取xml的程序终于搞定了,先前读取出来对象的值都是一样的,今天终于发现是对象放入ArrayList后放第二个对象的时候没有新建对象,而是使用了第一次建的那个对象,导致了放进去的所有对象的值都和最后放进去的那个值一样。估计ArrayList放进去的是指向那个对象的类似指针的东西,对象被修改后,在ArrayList里也相当于被修改了。看来这些细节方面的不注意就会导致很多问题啊。
前面那个程序,读取放在网上的xml很正常,但是在我自己电脑上搭建的web服务器上的xml时却怎么也读取不出来,而且xml文件还常常在浏览器上解析出错,DOM生成xml有点复杂,所以用php的echo直接生成xml,不知是编码问题还是别的问题,浏览器一直提示有问题,最后把php文件编码改回了ANSI,又用 iconv(‘gb2312′,’utf-8’,$xml); 处理,放在服务器上后,Android终于读取出了。。。过程之艰辛啊。。。有问题只能去问百度,旁边也没人能问的,有时真的很痛苦啊。。。
既然解决了这个问题,我打算做个游戏,很简单的一个游戏,猜数字,然后加个网络排名,玩家可以把自己的成绩上传到网上,应该还不错的吧,估计过程会很艰辛,又会出现各种各样的问题。。。祝我好运吧。。。