upload_test.htm
表单页<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"><head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>test_page</title>
</head>
<body>
<iframe  style=" display:none" frameborder="0" height="0" id="act_frame" name="act_frame" ></iframe><form name="con" action="poco_act.php" method="post" target="act_frame">
<div>图片链接:&nbsp; 
<input  id="url" name="pic" type="text" size="50" value="" />
</div>
<div>图片上传:&nbsp; 
    <iframe name="frame" frameborder="0" width="500px" height="38px" scrolling="no" src="upload_pic.php" >
</iframe>   
 </div>
 </form>
</body>
</html>************
upload_pic.php
上传页
*************
<?php
$fname = $_REQUEST['fname'];
if( !$fname )
    $fname = 0;?>
<html>
<head>
<title>&lt;admin&gt;</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<style type="text/css">
<!--
body {
background-color: #ffffff;
}
-->
</style></head>
<body marginheight="0" text="#808080" link="#404040" vlink="#404040" alink="#CC0000">
   <table width="100%" border="0" cellpadding="0" cellspacing="0" class="en9pt" style="margin-top:0">
   <form name="frm" method="post" enctype="multipart/form-data" action="upload_pic_act.php">
<input type="hidden" name="fname" value="<?php echo $fname ; ?>">

<?php
         //如果$fname为空,以显示上传表单
if( !$fname ) 
{
?>
  <tr>
  
<td><font color="#990000">

  <input name="opus" type=file  align="baseline" style="width:300"> 

<input name="submit" type="submit" value="上传"> 


</font></td>
  </tr>
<?php
}
else
{
?>
<tr>
           <td height="12" colspan="2">
<font style="font-size:9pt;color:red">您成功上传!</font> </td>
</tr>
<?php
}
?>
     </form>
</table>
 <?php
 //传回上传路径就运行以下JS
 if($fname) 
 {
?>
<script language="JavaScript">
//上传成功后,左URL表单上加上文件上传路径
window.parent.con.url.value = "<?php echo  $fname; ?>";
</script>
<?php
 } 
?>
</body>
</html>
 
***************
upload_pic_act.php
上传处理页
***************<?php
include_once("include/upload_function.php");//上传函数
$upload_dir = "Image";
$file_dir   = date("Ymd");//以当前时间为上传文件目录$file_name  = date("YmdHis").rand(11111,99999); //生成文件名$arrPhoto=process_upload($upload_dir,$file_name,$file_dir); //引用上传函数if($arrPhoto['img_name']=="")exit;$fname = $arrPhoto['img_fullpath']; //上传后的路径
echo "<script language=javascript>window.location.replace('admin_upload_pic.php?fname=".$fname."');</script>";
?>

解决方案 »

  1.   

    原本文本框有内容的话
    window.parent.con.url.value = "<?php echo  $fname; ?>";
    改为
    window.parent.con.url.value += "<?php echo  $fname; ?>";
      

  2.   

    好像不怎么明白,而且有些地方不是很清楚。
    表单页上,“图片上传”为什么没有<input type="file" name="XXX">
    还有upload_function.php页和admin_upload_pic.php是干什么的?我水平比较低,还请指导一下!
      

  3.   

    表单上传的<input type="file" name="XXX">放在了upload_pic.php 里
    然后在表单上传页用iframe引用upload_pic.php
    upload_pic_act.php是处理上传图片用的,还有,在upload_pic_act.php上我用了一个上传图片的函数,上面我没有给出的,你可以用自己的方法实现这个功能
    上传成功后echo "<script language=javascript>window.location.replace('admin_upload_pic.php?fname=".$fname."');</script>";
    改为
    echo "<script language=javascript>window.location.replace('upload_pic.php?fname=".$fname."');</script>";
    的这一句是刷新iframe,使upload_pic.php判断是否上传成功,上传成功
    运行
    window.parent.con.url.value += "<?php echo  $fname; ?>";
    使图片上传页的 url表单的内容增加上传图片的路径用的
      

  4.   

    用iframe这个方法不错,对HTTPRequest不熟的话用这个正好