将图像上载到服务器但未上载到WAMP服务器时出错


Error uploading images to server but not on WAMP server

我在将图像上传到网站主机时出错。但我在WAMP服务器上没有遇到任何问题。这就是我犯的错误。

[20-Aug-2013 00:58:27 America/Denver] PHP Warning:  copy(/photos/Light-And-Snow.jpg) [<a href='function.copy'>function.copy</a>]: failed to open stream: No such file or directory in /home/rajeev/public_html/upload.php on line 86

86线上的代码是

                mysql_query(
                "INSERT INTO
                    gallery_photos (
                `photo_filename`,
        `photo_caption`,
                `photo_description`,
        `photo_keywords`,
                `category_name`
                ) VALUES(
            '".addslashes($photos_uploaded['name'][$counter])."',
                    '".addslashes($photo_caption[$counter])."',
                    '".addslashes($photo_description[$counter])."',
                    '".addslashes($photo_keyword[$counter])."',
                    '".addslashes($_POST['category'])."')"
                ) or die(mysql_error() . 'Photo not uploaded');
            $filetype = $photos_uploaded['type'][$counter];
            $extention = $known_photo_types[$filetype];
// Store the orignal file
copy($photos_uploaded['tmp_name'][$counter], $images_dir."/".$photos_uploaded['name'][$counter]);

我做错了什么?谢谢你的指示。。。

看起来您正试图将照片保存到主机上的/photos/目录中。在共享托管环境中,您很可能无法在文件系统的根目录上创建文件夹。

我猜,你有一条类似的线路

$images_dir = '/photos';

您需要将其更改为相对路径,而不是绝对路径:

$images_dir = $_SERVER['DOCUMENT_ROOT'] . '/photos';

您可能还需要创建该文件夹,并确保它具有写入权限。这可以通过命令行完成,如果您有shell访问权限,也可以通过托管提供商提供的管理工具完成。

它适用于WAMP,因为您喜欢使用宽松的权限运行:Apache有权创建或写入C:'photos'目录