2011-01-05 91 views
0

我上传的html页面上只有两件事:一个文件打开按钮和一个提交。打开对话框不成问题,但在用户单击确定后,我可以在哪里找到路径字符串?AJAX上传代码

</td> 
<td style="width: 109.8pt; padding: .75pt .75pt .75pt .75pt" width="146"> 
<input id="file" name="file" type="file"> 
<p class="MsoNormal">&nbsp;</p> 
</td> 

下面的php文件是否附带开发工具,或者它是默认的Windows javaScrpt的一部分?

行动= “upload.php的”

+0

我们无法知道你的PHP文件做什么。你必须证明这一点。无论如何,它可能与Windows和JavaScript都无关。 – 2011-01-05 16:04:11

+0

你知道任何好的PHP脚本,用于上传吗? – 2011-01-05 16:57:42

回答

0

佩卡是正确的,这有什么好做任何asp.net或javascript。当您提交文件上传(无论是在asp.net应用程序还是php中)时,都会有一些标准的响应信息,其中一些将会是所选文件(文件名等)的详细信息。

快速谷歌搜索带来了几个开源PHP上传公用事业,以及文件上传DOM引用,如:

  1. http://sourceforge.net/projects/uploadtool/
  2. http://www.tizag.com/phpT/fileupload.php
  3. http://www.w3schools.com/php/php_file_upload.asp

我'd建议编辑您的问题以排除asp.net标记并将其替换为PHP。这样更多的PHP开发人员会看到你的问题。

0

试试下面的代码

你必须做一个“图片”文件夹中的当前目录,使两个文件: 1:2的index.php:upload.php的

你也获取成功中的图像名称,该图像名称可用于在数据库中保存图像名称。

1:index.php文件

<html> 
<head> 
    <title> 
    </title> 
    <script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script> 
    <script type="text/javascript" > 
     var imgName = ""; 
     $(function() { 
      $('form').on('submit', function (e) { 
       e.preventDefault(); 
        $.ajax({ 
         url: "upload.php", 
         type: "POST" , 
         data: new FormData(this), 
         contentType: false, 
         cache: false, 
         processData: false, 
         success: function (data) { 
          data = JSON.parse(data); 
          imgName = data.path; 
          var pic = imgName; 

         }, 
         error: function() {} 
        }); 
      }); 
     }); 
    </script> 
</head> 
<body> 
    <form enctype="multipart/form-data"> 
     <input type="file" name="pic" id="pic"> 
     <br> 
     <input name="submit" type="submit" value="Submit"> 
    </form> 
</body> 
</html> 

2:upload.php的

<?php 

if (is_array($_FILES)) { 
    if (is_uploaded_file($_FILES['pic']['tmp_name'])) { 
     $sourcePath = $_FILES['pic']['tmp_name']; 
     $targetPath = "./images/" .time(). $_FILES['pic']['name']; 
     if (move_uploaded_file($sourcePath, $targetPath)) { 
      $imgPath['path']=$targetPath; 
      echo json_encode($imgPath); 
     } 
    } 
}