Php MLS RETS服务器
我正在从MLS RETS服务器下载财产图像。当我使用Php MLS RETS服务器,php,api,rets,mls,Php,Api,Rets,Mls,我正在从MLS RETS服务器下载财产图像。当我使用GetObject方法下载属性图像时,有时GetObject方法不返回成功参数,则图像不会在本地服务器上下载。有什么解决办法吗 这是我的密码: $photos = $rets->GetObject("Property", "Photo", $idata['propertymlsid'], "*", 0); foreach ($photos as $photo) { $imgval=
GetObject
方法下载属性图像时,有时GetObject
方法不返回成功参数,则图像不会在本地服务器上下载。有什么解决办法吗
这是我的密码:
$photos = $rets->GetObject("Property", "Photo", $idata['propertymlsid'], "*", 0);
foreach ($photos as $photo)
{
$imgval="";
$imgval="{$photo['Content-ID']}-{$photo['Object-ID']}.jpg";
if ($photo['Success'] == true)
{
@file_put_contents("photos/{$photo['Content-ID']}-{$photo['Object-ID']}.jpg", $photo['Data']);
@mysql_query("insert into tableName (pro_mlsid,photos_name,image_date)values('".$idata['propertymlsid']."','".$imgval."','".date('Y-m-d h:i:s')."')");
}else
{
// in this section i want to download image. please suggest what to do here? . i have record for this image in database for but could not download it.
}
}
请把代码通读一遍。我想在上述代码的else部分下载图像。不幸的是,RETS协议不是为处理图像而设计的,整个过程中有很多陷阱
GetObject
获取图像本身。但是,在此期间,代理可能已删除该图像如果您的流程整体正常,并且缺少一个图像,那么它很可能会永远消失。理论上,您应该运行第二个进程并尝试获取实际的元数据。如果没有返回,您可以放心地假设此图像的记录已丢失。一些房地产板块允许代理上传损坏的照片,甚至是无效的文件(如PDF)。房地产经纪人犯的这些错误错误会错误地更新RETS提要,以表明存在有效的照片,但当您尝试下载它时,它失败了
只需删除您的
else
语句。请发布您的代码。看起来您的GetObject查询是正确的。只有照片['Success']为真时,才能下载照片。如果为false,它将转到else块。在这种情况下,您可能需要从$photo['ReplyCode']记录错误代码。请参阅文档:但您说有时它不会返回成功?它多久工作一次?