php.ini - 设置upload_tmp_dir

时间:2011-05-17 16:26:45

标签: file-upload php

我有一个页面,允许用户上传照片 - 我认为相当标准的PHP。

这适用于我迄今为止使用的实时服务器,但我最近在我的Mac上安装了php,现在上传已停止工作。

我猜这是因为在php.ini文件中没有正确设置upload_tmp_dir。

有谁知道我需要做什么?

编辑:

这是输出的错误消息......

Warning: imagejpeg(): Unable to open 'upload/thumbs/AL.jpg' for writing: Permission denied in /Users/tom/Sites/tombrennand/add.php on line 128 Warning: imagejpeg(): Unable to open 'upload/images/AL.jpg' for writing: Permission denied in /Users/me/Sites/mysite/add.php on line 135 Notice: Undefined variable: con in /Users/me/Sites/mysite/add.php on line 172 Warning: mysql_close() expects parameter 1 to be resource, null given in /Users/me/Sites/mysite/add.php on line 172

因此,我认为我需要在该文件夹上设置权限。有什么想法吗?

4 个答案:

答案 0 :(得分:2)

更改

upload_tmp_dir = /tmp/whatever
在您的php.ini文件中输入

。确保此位置可由相应的用户/组写入。

答案 1 :(得分:1)

  

警告:imagejpeg():无法打开   'upload / thumbs / AL.jpg'用于写作:   许可被拒绝   /Users/tom/Sites/tombrennand/add.php   在第128行

您需要在文件夹upload/thumbs

上设置写入权限

由于这是您的个人计算机,因此您只需cd进入文件夹upload,然后再访问终端中的chmod 777 thumbs

答案 2 :(得分:0)

在新页面中查看您的phpinfo以查看它的设置:

<?php phpinfo(); ?>

如果它不在您需要的位置,您可以使用php.ini文件进行编辑。

答案 3 :(得分:0)

我遇到了同样的问题。我做了一个move_uploaded_file()到我知道IIS用户有写权限的文件夹然后我解压缩该文件。 默认情况下,我的PHP.ini使用的是c:\ windows \ temp,即使我向IIS用户提供了写入权限,它也无法正常工作。