dongtang5229
2011-12-21 05:58
浏览 94
已采纳

使用function.file-put-contents拒绝警告权限

I'm using this code to download a dynamic image file which is already on my server

$url = 'example.com/test/image.php';
$img = 'cert.png';
file_put_contents($img,'file_get_contents($url));

allow_url_fopen is already enabled on the server. but i'm still getting the following error

Warning: file_put_contents(cert.png) [function.file-put-contents]: failed 
to open stream: Permission denied in D:/... on line 42

I saw the same error on another website http://www.rsi-relief.com/rsi-links/ergonomics-information/ergoweb/

I'm new to PHP so i'm a bit confused here. Pls help

图片转代码服务由CSDN问答提供 功能建议

我正在使用此代码下载已在我服务器上的动态图像文件 $ url ='example.com/test/image.php'; $img ='cert.png'; file_put_contents($ img,'file_get_contents($ url));

服务器上已启用allow_url_fopen。 但我仍然收到以下错误

 警告:file_put_contents(cert.png)[function.file-put-contents]:failed 
to open stream:权限被拒绝 D:/ ...第42行
   
 
 

我在另一个网站上看到了同样的错误 http://www.rsi-relief.com/rsi-links/ergonomics-information/ergoweb/

我是PHP的新手,所以我在这里有点困惑。 请帮助

  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • doushishi6513 2011-12-21 05:59
    已采纳

    This has nothing to do with wrong php code i guess, but file system permissions on your server /host. If you have access via SSH or FTP you can try to modify the cmod settings of your folder / file.

    Update

    Your code is wrong, try this

    // this is the path where you need write access on your server
    $imgDestinationPath = '/you/need/a/physical/serverpath/here/cert.png';
    $url = 'http://example.com/test/image.php';
    $content = file_get_contents($url);
    file_put_contents($imgDestinationPath, $content);
    
    已采纳该答案
    打赏 评论
  • dongqindan4406 2014-05-13 14:35

    Instead of command line, I suggest you try with filezilla or some FTP client, right click on the directory and click on file permissions. then tick appropriate permission and click ok. This should work

    打赏 评论

相关推荐 更多相似问题