Wednesday, March 9, 2011

a temporary solution for PEAR Install with PHP5.3

I met a Bug of PHP(still doesn't fixed yet) about halt_compiler function which caused installing PEAR fail.

php go-pear.phar


This command doesn't work in PHP5.3

To fix(for the time being) it, use this command:

php -ddetect_unicode=0 go-pear.phar

Sunday, October 17, 2010

Project "kana50" has created

I've been learning iPhone developing recently.
Finally I created a iPhone App and submitted it to to App store(still waiting to review).

And I decide make this iPhone App project Opensource:
http://code.google.com/p/kana50/

How to fix PROCEDURE can't return a result set in the given context

CLIENT_MULTI_RESULTS enables the client program to process multiple results. This option must be enabled if you execute CALL statements for stored procedures that produce result sets. Otherwise, such procedures result in an error Error 1312 (0A000): PROCEDURE proc_name can't return a result set in the given context.

http://dev.mysql.com/doc/refman/5.0/en/c-api-multiple-queries.html

Sunday, July 11, 2010

eMule one-click AddOn, a new project is created

It's a firefox add-on that I made recently, just because I'm tried to copy/paste a ed2k link from a window to another windows if you have used eMule web interface to remotely control your eMule client.

Project home:
http://code.google.com/p/emule-oneclick-add-on/

Mozilla Add-On install:
https://addons.mozilla.org/en-US/firefox/addon/195536/

Sunday, May 23, 2010

Reading note of 'Real world flash game development'

Chapter 3:
A Quick Review of the Planning Steps
● One- to two-sentence description
● Game screen wireframe and fl ow
● List of game mechanics
● List of assets (art, animation, sound, video, and copy)
● Technical requirements
● UML class diagrams

Chapter 4:
传入任意数量参数到函数/方法

function myFunction (… params):void {
for (var i:int = 0; I < params.length; i + + ) {
if (!(params[i] is DisplayObject)) {
throw new ArgumentError( “ Only DisplayObjects can be used in myFunction. ” );
}
}
}


Getter/Setter

package {
public class MyClass {
protected var _maxNameLength:int = 8;
protected var _name:String;
protected var _lives:int = 3;
public function get name():String {
return _name;
}
public function set name(value:String):void {
name = value.substr(0,maxNameLength);
}
public function get lives():int {
return _lives;
}
}
}
//OUTSIDE CLASS
var myInstance:MyClass = new MyClass();
myInstance .name = “ CHRISTOPHER ” ;
trace (myInstance.name); //OUTPUTS “ CHRISTOP ” ;
trace (myInstance.lives); //OUTPUTS 3;
myInstance .lives = 10; //THROWS ERROR


to be Continued.

Tuesday, April 6, 2010

Using Beyond compare3 as Git diff tool under Cygwin

在Cygwin下使用Beyond compare3(BC3)作用Git的diff工具
分两步走~


step 1.
create new .sh file as Git's diff warpper.
#!/bin/sh
/cygdrive/c/Program\ Files\ \(x86\)/Beyond\ Compare\ 3/BCompare.exe "d:/programs/cygwin$2" "$5"


** please notice here, you need specially make a full path of $2, since BC3 will not find your tmp file under Cygwin path. **
** 注意这里的两个路径,第二个是本地文件,因为是相对路径,BC3可以找到,但第一个是绝对路径指向/tmp/xxx,所以我们要特别指定在windows下的真实路径,而不是cygwin的路径,所以我加上了d:/programs/cygwin。

step 2.
Add this line to .bashrc and run it to configure your Git gloabl variable.
git config --global diff.external /home/z33/git-diff-wrapper.sh


Now you can try git diff whatever your file.

Thursday, March 11, 2010

Wordpress hack tips - Add tags to static pages

I did a lot of wordpress plugin jobs recently. But sometimes clients are not satisfied with what plugins can do. for example there is a client of mine want add tags to any static pages, just like wordpress posts did.

Actually it's very easy to do this(as well as to create a plugin for this).
just paste following lines to page_attributes_meta_bos function in meta-boxes.php:

<h5>Tags</h5>
<div>
<input type="text" name="tags_input" class="tags-input" id="tags-input" size="30" tabindex="3" value="<?php echo get_tags_to_edit( $post->ID ); ?>" />
</div>