- 论坛徽章:
- 0
|
java我没学过
javascript也从来都是抄了别人的来改改在用!(当然简单的逻辑判断什么的还是会写)
在下面这段程序里面有几行丑陋低效的代码,我是用循环20次replace来实现更换所有图片连接的(万一哪个图片出现超过20处地方呢?OMG)
哪位大大能告诉我这里的这个replaceALL怎么实现?
- <?
- include './ServerXMLHTTP.php';
- //作者:luojiannx@gmail.com
- //说明:参考了雷の龙的asp版本
- ?>
- <style>
- <!--
- body {
- font-size:10pt;
- }
- -->
- </style>
- <body bgcolor="#E3E3C7" leftmargin="0" rightmargin="0">
- <SCRIPT LANGUAGE="JavaScript">
- <!--
- var a=window.opener.FCK.EditorDocument.body.innerHTML;
- //-->
- </SCRIPT>
- <?
- $files=$_POST['files'];
- for($i=0;$i<=count($files);$i++)
- {
- if($files[$i]!='')
- {
- $now=getdate();
- $filename=$now[year].$now[mon].$now[mday].$now[hours].$now[minutes].$now[seconds].$i.strrchr(trim($files[$i]),"."); ;
- $savetime=SaveHTTPFile(trim($files[$i]),"/upload/Image/upfiles",$filename);
- ob_start();
- ?>
- <SCRIPT LANGUAGE="JavaScript">
- <!--
- //不晓得怎么实现replaceall的功能,只好用了这个笨办法
- //希望有朋友能在此改进下
- for(var lj=0;lj<20;lj++)
- {
- a=a.replace("<?=trim($files[$i])?>","http://www.xxx.com/upload/Image/upfiles/<?=$filename?>");
- }
- //重点:下面的'FCKeditor1'就是你给你的编辑器取得name
- //参见FCKeditor的示例代码,你就会知道他是什么了
- var oEditor = window.opener.FCKeditorAPI.GetInstance('FCKeditor1');
- oEditor.SetHTML(a);
- document.write("文件:<?=trim($files[$i])?>已经保存成功!耗时:<?=$savetime?>,正在保存下一个文件<BR>");
- -->
- </SCRIPT>
- <?
- ob_end_flush();
- }
- }
- ?>
- <SCRIPT LANGUAGE="JavaScript">
- <!--
- window.opener.FCKeditorAPI.GetInstance('FCKeditor1').SetHTML(a);
- document.write("<font clor=red><B>所有文件保存成功!</b></font>");
- setTimeout("window.close();",2000);
- //-->
- </SCRIPT>
- </body>
复制代码 |
|