我已将 aviary 嵌入到我的网页中,它工作正常,但我无法使用 file_get_contents 命令来获取保存的图像。
鸟舍代码:
JS:
<!-- Load Feather code -->
<script type="text/javascript" src="http://feather.aviary.com/js/feather.js"></script>
<!-- Instantiate Feather -->
<script type='text/javascript'>
var featherEditor = new Aviary.Feather({
apiKey: '*********',
apiVersion: 3,
theme: 'light', // Check out our new 'light' and 'dark' themes!
tools: 'crop,orientation,brightness,sharpness,redeye,effects,stickers,focus,contrast,whiten,warmth,colorsplash,enhance,saturation,blemish,draw,text,frames',
appendTo: '',
onSave: function(imageID, newURL) {
var img = document.getElementById(imageID);
img.src = newURL;
},
onError: function(errorObj) {
alert(errorObj.message);
},
postUrl: 'http://example.com/featherposturl'
});
function launchEditor(id, src) {
featherEditor.launch({
image: id,
url: src
});
return false;
}
HTML:
<div id='injection_site'></div>
<img id='image1' src='photo.jpg' style="max-height:360px;" on/>
<p><input type='image' src='http://images.aviary.com/images/edit-photo.png' value='Edit photo' onclick="return launchEditor('image1', document.getElementById('image1').src);"/></p>
根据 aviary 文档,我可以获取在 aviary 服务器上创建的临时文件,但使用以下 php 代码:
<?php
$image_data = file_get_contents($_REQUEST['url']);
file_put_contents("photo.jpg",$image_data);
?>
当我运行它时,它会出现此错误
[24-Sep-2013 12:14:16 UTC] PHP 警告:file_get_contents() [function.file-get-contents]:文件名不能为空......
有没有人知道如何获取在 aviary 服务器上创建的文件并将副本上传到我的服务器。
更新
我注意到一个名为“photo.jpg”的文件被添加到服务器中,文件大小为 0kb。我假设这是来自file_put_contents("photo.jpg",$image_data);
但图像数据是空白的,因为如果 file_get_contents
有任何想法吗?