【问题标题】:Uploading files - PHP - no move [closed]上传文件 - PHP - 不动[关闭]
【发布时间】:2014-06-19 13:52:27
【问题描述】:

您好,我阅读了所有具有此标题的主题,但没有找到解决方案。

由于我的“网络”现在在线,而不仅仅是本地主机,文件上传不起作用,之前它很好。

现在是代码:

move_uploaded_file($_FILES["file"]["tmp_name"],"/epoproject.hys.cz/web/directory/".$katedra."/".$predmet."/".$typ."/" . $_FILES["file"]["name"]);

试过这是或只是:

move_uploaded_file($_FILES["file"]["tmp_name"],/epoproject.hys.cz/web/directory/".$katedra."/".$predmet."/".$typ."/" . $_FILES["file"]["name"]);

仍然没有,CHMOD 设置为 777。

  <?php session_start();
  error_reporting(E_ALL);
  ini_set('display_errors', 1);
  ?>
  .
  .some html code and variables
  .
  if ((($_FILES["file"]["type"] == "image/gif")
  || ($_FILES["file"]["type"] == "image/jpeg")
  || ($_FILES["file"]["type"] == "image/jpg")
    and other extensions...
  && in_array($extension, $allowedExts))
  {
   if ($_FILES["file"]["error"] > 0)
    {
     echo "Return Code: " . $_FILES["file"]["error"] . "<br>";
    }
    else
   {
     if (file_exists("/directory/".$katedra."/".$predmet."/".$typ."/" . $_FILES["file"]               ["name"]))
  {
  echo $_FILES["file"]["name"] . " již existuje. <br></br>";
  echo "<a href='upload.php'> Nahrát další soubor </a>";
  }
  else
  {
      echo "Soubor: <b>". $_FILES["file"]["name"] . "</b> byl úspěšně uploadován <br></br>";
      echo "Velikost souboru: " . ($_FILES["file"]["size"] / 1024) . " kB";
      echo "<br></br>";
      echo "<br></br>";
      echo "<a href='upload.php'> Nahrát další soubor </a>";
 move_uploaded_file($_FILES["file"]["tmp_name"],"/epoproject.hys.cz/web/directory/".$katedra."/".$predmet."/".$typ."/" . $_FILES["file"]["name"]);
 $absolute_path = realpath("/directory/".$katedra."/".$predmet."/".$typ."/". $_FILES["file"]["name"]);
etc...

【问题讨论】:

  • 所以从您尝试访问的当前目录/epoproject.hys.cz/web/directory/
  • 有什么错误吗?你检查过你的错误日志吗?与往常一样,很可能是不存在的目标目录或缺少权限。
  • @RoyalBg 是的,主目录包含“目录”、“包含”等...
  • @frky 将error_reporting(E_ALL);ini_set('display_errors', 1); 放在文件开头以显示错误。
  • 您可以将绝对路径添加到您尝试将文件移动到的位置吗?我认为您不会将 Web 文件保存在 /epoproject.hys.cz

标签: php mysql upload


【解决方案1】:

我做了一些改动,尤其是path.Try:

if ((($_FILES["file"]["type"] == "image/gif")
  || ($_FILES["file"]["type"] == "image/jpeg")
  || ($_FILES["file"]["type"] == "image/jpg")
  && in_array($extension, $allowedExts))){

    if ($_FILES["file"]["error"] > 0){
        echo "Return Code: " . $_FILES["file"]["error"] . "<br>";
    }
    else{
        if (file_exists("/directory/".$katedra."/".$predmet."/".$typ."/" . $_FILES["file"]["name"])){
            echo $_FILES["file"]["name"] . " již existuje. <br></br>";
            echo "<a href='upload.php'> Nahrát další soubor </a>";
        }
        else{
            echo "Soubor: <b>". $_FILES["file"]["name"] . "</b> byl úspěšně uploadován <br></br>";
            echo "Velikost souboru: " . ($_FILES["file"]["size"] / 1024) . " kB";
            echo "<br></br>";
            echo "<br></br>";
            echo "<a href='upload.php'> Nahrát další soubor </a>";
            $path_image = "./directory/".$katedra."/".$predmet."/".$typ."/" . $_FILES["file"]["name"];
            if(move_uploaded_file($_FILES["file"]["tmp_name"], $path_image)){
                echo 'image file upload sucess';
            } else{
                echo 'image file upload failed';
            }
        }
    }
}

【讨论】:

  • 它工作正常,非常感谢卢卡斯!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-11-07
  • 2012-09-05
  • 1970-01-01
  • 2015-03-31
  • 2012-11-24
  • 2014-11-21
相关资源
最近更新 更多