在php中创建图像,显示工作,保存到文件不

Fon*_*ons 13 php image

我正在使用imagepng通过php脚本创建一个图像.这工作正常,并在网站上显示良好.甚至保存 - 给我一个有效的.png文件

header( "Content-type: image/png" );
imagepng($my_img);
$save = "../sigs/". strtolower($name) .".png";
//imagepng($my_img, $save, 0, NULL);
imagepng($my_img, $save);
Run Code Online (Sandbox Code Playgroud)

这是我用来生成文件并在网站上将其作为图片返回的代码的结尾部分.但是这两个选项(尝试过标记的选项)都不会将文件保存到网络服务器以供以后使用.写入文件的文件夹目前甚至设置为chmod 777,以排除该方面的任何问题.$ name肯定是一个没有空格的有效字符串.

mau*_*ris 31

确保PHP具有将文件写入该文件夹的权限.chmod可能只影响FTP用户或特定用户.

并一次尝试一个.即:

header( "Content-type: image/png" );
imagepng($my_img);
Run Code Online (Sandbox Code Playgroud)

然后

$save = "../sigs/". strtolower($name) .".png";
imagepng($my_img, $save);
Run Code Online (Sandbox Code Playgroud)

这样你就可以隔离错误.

首先尝试保存与脚本相同的文件夹,看看是否有任何问题.

$save = strtolower($name) .".png";
imagepng($my_img, $save);
Run Code Online (Sandbox Code Playgroud)

  • 救了我两次 支持!:) (2认同)

Fon*_*ons 10

非常感谢你帮助我清理头脑并让我从不同的角度看待你.所有这些都与文件的权利有关.

当脚本生成文件时,权限设置不正确并且无法覆盖.

取出后:

header( "Content-type: image/png" );
imagepng($my_img);
Run Code Online (Sandbox Code Playgroud)

我收到一条关于无法写入的错误消息.当将文件手册设置为chmod 755时,脚本就像魅力一样.

所以新代码现在看起来像这样:

header( "Content-type: image/png" );
imagepng($my_img);
$save = "../sigs/". strtolower($name) .".png";
chmod($save,0755);
imagepng($my_img, $save, 0, NULL);
imagedestroy($my_img);
Run Code Online (Sandbox Code Playgroud)

将文件设置为可写入可修复问题,并且所有文件都按预期工作.

最好的问候Fons