|
查看: 1876|回复: 8
|
PHP 问题 !!! 请帮帮忙 !!!
[复制链接]
|
|
|
$filename = $_FILES["image"]["name"];
$file_basename = substr($filename, 0, strripos($filename, '.')); // strip extention
$file_ext = substr($filename, strripos($filename, '.')); // strip name
$new_file_name = $ic_no.'_photo_'.$file_ext;
if($file_ext != '.jpg' && $file_ext != '.jpeg' && $file_ext != '.gif' && $file_ext != '.png')
{
Header("Location: unsuccess.php?ip=change_photo_type");
}
else
{
if (($_FILES["image"]["size"] / 1024 ) /1024 > 2 )
{
Header("Location: unsuccess.php?ip=change_photo_size");
}
else
{
$location = "../upload/personal image/";
unlink($location.$new_file_name);
move_uploaded_file($_FILES["image"]["tmp_name"],$location .$new_file_name);
$location = 'upload/personal image/'. $new_file_name;
$sql3="UPDATE `image` SET `location` = '$location' WHERE `image`.`user_id` = '$userid' LIMIT 1 ";
mysql_query($sql3);
Header("Location:success.php");
}
}
问题是当我用 localhost 行运时, 是可以的, 当我 upload 去 server 时,就出现问题了
问题是:
Warning: unlink(../upload/personal image/sdasd_photo_.gif) [function.unlink]: Permission denied in /home/lk951/public_html/admin/change_profile_photo(php).php on line 44
Warning: move_uploaded_file(../upload/personal image/sdasd_photo_.gif) [function.move-uploaded-file]: failed to open stream: Permission denied in /home/lk951/public_html/admin/change_profile_photo(php).php on line 45
Warning: move_uploaded_file() [function.move-uploaded-file]: Unable to move '/var/tmp/phpG6airs' to '../upload/personal image/sdasd_photo_.gif' in /home/lk951/public_html/admin/change_profile_photo(php).php on line 45
Warning: Cannot modify header information - headers already sentby (output started at/home/lk951/public_html/admin/change_profile_photo(php).php:44) in /home/lk951/public_html/admin/change_profile_photo(php).php on line 52
为何会出现这问题?? 如果是 location 问题的话是没有错的。 请各位高手指点下小弟 !!!谢谢 !! |
|
|
|
|
|
|
|
|
|
|
发表于 17-4-2010 12:04 AM
|
显示全部楼层
/upload/personal image/
/upload/
用FTP -〉right-click 上面的folder ->change permission 改权限到777 |
|
|
|
|
|
|
|
|
|
|
发表于 17-4-2010 10:26 AM
|
显示全部楼层
|
你的access rights 出问题了,只要把personal image文件夹的权力改去777就好了 |
|
|
|
|
|
|
|
|
|
|

楼主 |
发表于 18-4-2010 02:05 AM
|
显示全部楼层
真是谢谢两位的帮忙 !!! 真是感激不尽 !!
可以解释下为何会这样的吗 ?
upload file 已经没问题了, 但是 delete file 时会出现这问题 :
Warning: unlink(../upload/Computer/Notes/onion13[1].gif ) [function.unlink]: No such file or directory in /home/lk951/public_html/admin/delete_paper(php).php on line 10
location 是当 upload file 时, location 会记录在 database 里, 而 delete file 时会直接从 database 拿出来, 所以 location 是不会错的。
|
|
|
|
|
|
|
|
|
|
|
发表于 18-4-2010 04:32 PM
|
显示全部楼层
本帖最后由 为人民服务 于 18-4-2010 04:39 PM 编辑
真是谢谢两位的帮忙 !!! 真是感激不尽 !!
可以解释下为何会这样的吗 ?
upload file ...
lkming 发表于 18-4-2010 02:05 AM 
文件名错了或者permission。可以用@关掉warning。 |
|
|
|
|
|
|
|
|
|
|
发表于 18-4-2010 09:41 PM
|
显示全部楼层
请善用 __FILE__,删除时使用绝对路径吧。。
你可以用 file_exists 试看文件是否真的存在。。 |
|
|
|
|
|
|
|
|
|
|

楼主 |
发表于 19-4-2010 12:30 AM
|
显示全部楼层
本帖最后由 lkming 于 19-4-2010 12:36 AM 编辑
文件名错了或者permission。可以用@关掉warning。
为人民服务 发表于 18-4-2010 04:32 PM 
文件名是没可能错的, 因为我直接 upload file 时,就进入 database, location 也是一样。
permission 是 777, 对吗 ?? 或者是别的意思 ?? |
|
|
|
|
|
|
|
|
|
|

楼主 |
发表于 19-4-2010 12:34 AM
|
显示全部楼层
请善用 __FILE__,删除时使用绝对路径吧。。
你可以用 file_exists 试看文件是否真的存在。。
seikan 发表于 18-4-2010 09:41 PM 
你指的 __FILE__ 的 function, 是怎样的?? 可以给点 tips 吗 ??
当我 upload file 过后, 我就用 coding 来 delete file, 所以文件是存在的,而且我也有确定文件有在。 |
|
|
|
|
|
|
|
|
|
|

楼主 |
发表于 19-4-2010 10:17 AM
|
显示全部楼层
问题解决了, 原来用 link 来 GET 是有问题的 !!
例子:
<a href="delete_paper(php).php? location=<?php echo $row['location']?>">Delete</a>
**********************************************************************
******* [delete_paper(php).php] *******
$location=$_GET['location'];
unlink ($location);
谢谢各位的帮忙, 真是十分感激 !!! 谢谢
|
|
|
|
|
|
|
|
|
| |
本周最热论坛帖子
|