Thanks for the reply, i have solved the problem. I edited the upload.php. I include a third party library (class.upload.php) to help me handle all the images processes, such as resize into 3 different size and keep the original size, add watermark, rename the file and etc.
Actually it is quite straight forward, but I need to combine them with Cakephp, therefore i need to make some changes.

Btw, how to display the error message on the uploader? it always display a tick (success) if the requested page (upload.php) was found.

E.g

die('{"jsonrpc" : "2.0", "error" : {"code": 101, "message": "Failed to open input stream."}, "id" : "id"}');

I check the JSON response by Firebug and the correct message is returned, but, in the uploader, it still show 100% uploaded and the green tick icon.

I wish to do more processes when uploading the image, such as resize the image into different size (for thumbnail purpose), and add a watermark to the image.

How can i do this? I found that the upload.php is not really working, i delete the file and the upload process is still working.

Any idea??

Many Thanks.