hoho,肯定得帮wasy老兄的忙~~~1)没照顾到PHP4.2.1等新版PHP的情况,data_to_file和file_to_data两个程序的开始部分都应该加上extract($_REQUEST);extract($_SERVER); (这个应该是wasy写太急了)2)在备份数据的时候,NULL值没被备份下来,而是被转成了''. 这个NULL和''好像是不等的吧.我用phpMyadmin测试了一下,Myadmin把NULL保留了下来.看来NULL和''应该是不等的.目前就发现了两个小问题:) wasy老兄的程序还真不错! JS很好!

解决方案 »

  1.   

    小老虎好快哟,谢谢。
    对于第一个问题,确实太匆忙,而且也是习惯,没有考虑到:)
    第二个问题,大意,hehe,解决如下:
    将data_to_file这句话:
    for($k=0;$k<$nums;$k++) $result.="'".addslashes($contArr[$k])."',";

    改为:
    for($k=0;$k<$nums;$k++){
    if(!isset($contArr[$k])) $contArr[$k]="NULL";
    $result.="'".addslashes($contArr[$k])."',";
    }
      

  2.   

    补充几点:
    1.这个程序本来就有两个基本的bug,我写的时候就考虑过了。第一个bug就是备注符号。这个主要为了生成的数据库文件的可读性。第二个bug是sql语句分割符号,这一点只能说尽量减少错误的可能性。
    2.本来打算直接用文件系统函数,直接对数据库文件作copy备份,但是这样还要考虑权限和路径问题,而且本人也是想对mysql更熟练了解,才用这种方式写的。欢迎大家继续指正!
      

  3.   

    剛剛又寫了一個以文件copy形式備份還原的程序,只要權限夠,比那個以sql語句備份的絕對保險。
    很簡單,就不帖出來了。