我有这个非常简单的形式。对于那些想要给自己一张照片的人来说,这是一个很好的例子。在我的网站上。没有上传,只需输入图片的网址,然后点击保存即可。所以,它只是一个" url"。
这是我目前的代码
<?PHP
if(is_array(getimagesize($_POST['profilepicture']))&&filter_var($_POST['profilepicture'], FILTER_VALIDATE_URL,FILTER_FLAG_SCHEME_REQUIRED)){
echo "Good";
} else {
echo "Bad";
}
?>
我已经尝试了一切。我尝试过getimagesize()并且它不起作用。这可以通过wamp在我的localhost上运行,但在我的主机上失败。我必须在php.ini中更改某些内容吗?
非常感谢。
答案 0 :(得分:1)
您的主机可能未启用allow_url_fopen
指令。这可能会导致getimagesize
函数无法访问外部URL图像的情况。如果是这种情况,启用错误报告将发出警告说明
警告: 和getimagesize(http://extenalsite.com/path/to/profile/image.txt) [function.getimagesize]:无法打开流:没有合适的包装器 可以找到
并将其设置为有帮助的原因。请参阅类似问题here
答案 1 :(得分:0)
检查PHP.ini文件夹中的"upload_max_filesize"定义。确保它没有使上传过程失败。 (任何大于默认值2MB的文件都将被取消。)
供参考,请查看this thread。
答案 2 :(得分:0)
我已经找到了问题所在。我检查了我的主机上的错误日志。它说allow_url_fopen = 0是错误。我在我的php.ini上把它变成了“On”,现在它可以工作了!