【问题标题】:PHP File upload, working fine on one machine but not on other?PHP文件上传,在一台机器上工作正常但在另一台机器上不行?
【发布时间】:2011-11-28 21:43:32
【问题描述】:

当我尝试在 Windows 机器上使用 php 上传文件时,它工作正常:

   <form action="php/bulk.php"
  enctype="multipart/form-data" method="post">
  <p>
   Please specify a file below:<br>
  </p>
    <div>
  <input id="datafile" type="file" name="datafile" size="40"><br>
  <input type="submit" value="Upload File">
 </div></form>

bulk.php 上的代码:

$connector = new DbConnector();
$target_path = "uploads/";
$target_path = $target_path . basename( $_FILES['datafile']['name']);

if(move_uploaded_file($_FILES['datafile']['tmp_name'], $target_path)) {
  echo "The file ".  basename( $_FILES['datafile']['name']).
  " has been uploaded.  \n";

} else{
echo "There was an error uploading the file, please try again!";
?>
<form action="../addsamples.php">
 <input type="submit" value="Go Back" />
</form>
<?php
    exit (-1);
}

我尝试在服务器上上传,但它在那里不起作用!操作系统在这方面有什么作用吗?我的服务器是red hat linux,测试m/c是windows

【问题讨论】:

  • 您是否对要上传到的文件夹设置了正确的写入权限?
  • 您的 PHP 配置很容易在其中发挥作用。配置中设置的上传文件大小有限制。那将是第一个检查的地方。您尝试上传的文件有多大?
  • 您是否遇到任何错误?定义“不工作”的含义。
  • 它没有给出任何具体的书面错误。我回显的错误为“上传文件时出错,请重试!”。就是这样。
  • 我要上传的文件大小为 412 KB

标签: php file-upload


【解决方案1】:

最可能的问题是文件权限。运行网络服务器的用户(apache 我认为是红帽)是否具有php/uploads/ 的写入权限?

【讨论】:

  • 这是一个权限问题。非常感谢!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-01-06
  • 2022-01-08
  • 1970-01-01
  • 2016-09-28
  • 2015-07-27
相关资源
最近更新 更多