1

我正在创建一个社交网站。在用户注册期间有存储图像的规定。我想在用户上传图像时显示图像的预览,然后再提交表单。请帮助我。

这是我在注册部分的代码

<form action="insert_scene.php" 
 method="post" id="sceneform" enctype="multipart/form-data">
<label for="image">Scene Flyer:</label>
<img src="" width="120" height="130" alt="Scene Pic" />
<a href="" onclick="return uploadimg()" > Upload</a></li>
 <input type="file" name="file" id="file" style="display:none;" />
 </form>

javascript内容是

   function uploadimg()
{
    var uploader = document.getElementById('file');
    uploader.click();
    return false;
}

这是中的代码段insert_scene.php(实际上以下代码段放在另一个文件中,该文件包含在 中insert_scene.php

<?php 
ini_set('memory_limit','128M');
ini_set("post_max_size", "10M");
ini_set("upload_max_filesize", "10M");
echo "Upload: " . $_FILES["file"]["name"] . "<br />";
if ($_FILES["file"]["error"] > 0)
{
  $fileN = '';
 echo 'File Size:' .($_FILES["file"]["size"] / 1024);
}
else
{

$maxImgSize=($_FILES["file"]["size"] / 1024);

if($maxImgSize>=5121 || $maxImgSize==0){

  $fileN = '';
}
else{

move_uploaded_file($_FILES["file"]["tmp_name"],"upload/" . $_FILES["file"]["name"]);

  $fileN="upload/" . $_FILES["file"]["name"];

  while(file_exists($fileN)){
      $fileN="upload/" . md5($fileN).$_FILES["file"]["name"];
  }

  rename("upload/" . $_FILES["file"]["name"], $fileN);


      }
    } 
   ?>
   $scene_flyer = $fileN;

发布表单后,$scene_flyer获取图像地址。但我想在第一页的表单提交之前显示预览。请帮助我。

4

1 回答 1

0

改进您的代码并使用 jQuery uploadify。

http://www.uploadify.com/demos/

然后在 OnUploadSuccess 事件中编写一些简单的代码:

http://www.uploadify.com/documentation/uploadify/onuploadsuccess/

于 2013-02-27T09:23:39.557 回答