写在前面
因为我自己也要用这个打包器,又要让大家试用,所以真正的后台写操作进行了用户认证,非我的话是不会真正存储文件的.
不过如果你在FF下的话可以自己想办法获得所有的数据的.
http://ne.16lo.com/src/nicEditor 下可以看到所有文件
包括:
nicepacker.swf flash图片合并工具
nicEditIcons.png 存盘后的图片合并
nicEditor.js 打包后未压缩的
index.html 模板文件
_.php 后台写盘的php文件是配合jCT,AJAX,唯一入口规则写的,不过配了服务器只能列表拒绝查看,他的内容我贴在后面,只有大家自己写了.
demo NE的演示程序,目前我还没有测试
js 为这个打包器写的js脚本文件
style 配合模板的样式文件
src NE的源目录
src1 做个备份
如何实现的
主要使用技术:
jQuery:这个就不用多说了
jCT3:我自己写的 javascript 模板编译器
flash:写了一个用于合并多个图片为一个图片的flash,这样做的原因就是:能在前台做的绝对不在后台做.从零开始学习flash,6天用haxe写成了.当然里面2天主要解决兼容性问题.
唯一入口:这个就是说所有前台向后台提交的数据都是通过一个后台入口的.具体可以用FF+Firebug调试就知道了.
其他:里面用的的一些js就不细说了.
这个是如何使用jCT的好例子.感兴趣的朋友我们进一步交流吧!
-.php的内容:
当然要让这个工作前面的唯一入口做了一些基本的准备工作,原谅我不能放出那个代码.
foreach ($AQ as $Q=>$P){
switch ($Q){
case 'entry':
se_Msg(se_webPath(dirname(__FILE__)).'/index.html',false);
break;
case 'octet-stream':
$Q=$_GET['Q'];
switch($Q){
case 'mergeImage':
$dir=dirname(__FILE__);
$file=$dir.'/'.$_GET['file'];
if(dirname($file)!=$dir) se_Msg(false,false);
if($_SERVER['REMOTE_ADDR']==MYIP)
$len=file_put_contents($file,$INPUT);
else
$len=strlen($INPUT);
se_Msg($len);
break;
default:
die;
}
break;
case 'packer':
$dir=dirname(__FILE__);
$file=$dir.'/nicEditor.js';
if($_SERVER['REMOTE_ADDR']==MYIP)
$len=file_put_contents($file,$P);
else
$len=strlen($P);
se_Msg($len);
break;
}
}