从localhost转到Web主机时文件上载的问题

时间:2011-03-01 09:57:51

标签: php upload hosted temp

如何在互联网上上传图片?现在,下面的脚本适用于本地主机,但我托管时遇到问题。任何人都有任何想法?

<?php
// form in which we can upload the image
session_start();

include("connect.php");

// session as on website.

$jobseekerid = $_SESSION['jobseekerid'];

if($_POST['submit'])
{
    //get file attributes
    $name = $_FILES['myfile']['name'];
    $tmp_name = $_FILES['myfile']['tmp_name'];


    if ($name)
    {
       // start upload process
       $location ="pictures/$name";
       move_uploaded_file($tmp_name,$location);
// updating table users (setting image locaion
       $query = mysql_query("UPDATE jobseekers SET imagelocation='$location' WHERE jobseekerid='$jobseekerid'");

       die("Your avatar has been uploaded! <a href='profile.php'>Go back to view</a>");


    }
    else

        die("Please Select a file!");

}

echo "Welcome, ".$_SESSION['username']."!<br><a href='logout.php'>Logout</a>";

echo "Upload Your image:

<form action='upload.php' method='POST' enctype='multipart/form-data'>
File: <input type='file' name='myfile'> <input type='submit' name='submit' value='upload!'
>
</form>

";

?>

2 个答案:

答案 0 :(得分:2)

可能的问题是您没有权限写入目标目录!!

请检查您是否可以与提供商联系。您可能必须将FTP权限777设置为上载目录或选择ISP提供的其他上载路径。

至少这是最典型的问题。

请下次更好地格式化您的问题。

答案 1 :(得分:0)

您应该收到一条解释您问题的错误消息。默认情况下,某些共享托管平台会阻止PHP错误消息,并且可以使用以下代码在运行时重新启用这些消息:

ini_set("display_errors", 1);

我假设运行PHP应用程序的用户组没有对其托管目录的写访问权。

根据操作系统和托管平台的不同,授予这些权限的方式有多种。