gpt4 book ai didi

php - 为什么搜索查询在 PHRETS 中没有显示任何结果?

转载 作者:可可西里 更新时间:2023-10-31 23:19:53 28 4
gpt4 key购买 nike

我正在使用此 php 脚本从一个简单的搜索查询中获取结果 here

我已经下载了属性元数据的 excel 文件 here

$rets_login_url = "http://sef.rets.interealty.com/Login.asmx/Login";
$rets_username = "xxxxxxxx";
$rets_password = "xxxxxxxx";
$rets_user_agent = "PHRETS/1.0";
$rets_user_agent_password = "xxxxxxx";

//////////////////////////////

// start rets connection
$rets = new phRETS;
// Uncomment and change the following if you're connecting
// to a server that supports a version other than RETS 1.5

$rets->AddHeader("RETS-Version", "RETS/1.5");

$rets->AddHeader("User-Agent", $rets_user_agent);

echo "+ Connecting to {$rets_login_url} as {$rets_username}<br>\n";
$connect = $rets->Connect($rets_login_url, $rets_username, $rets_password, $rets_user_agent_password);

// check for errors
if ($connect) {
echo " + Connected<br>\n";
}
else {
echo " + Not connected:<br>\n";
print_r($rets->Error());
exit;
}

$search = $rets->SearchQuery("Property","ResidentialProperty","(ListDate=1990-01-01+)");
while ($listing = $rets->FetchRow($search)) {
echo "Address: {$listing['StreetNumber']} {$listing['StreetName']}, ";
echo "{$listing['City']}, ";
echo "{$listing['State']} {$listing['ZipCode']} listed for ";
echo "\$".number_format($listing['ListPrice'])."\n";
}


$rets->FreeResult($search);

echo "+ Disconnecting<br>\n";
$rets->Disconnect();

当我运行这个脚本时,它显示了连接然后断开的结果。但是没有找到结果。我在一些问题上尝试了很多建议,但没有显示结果,但对我没有任何帮助。我哪里错了?

我的 RETS 服务器信息在这里:

RETS 服务器:SEF RETS 系统RETS 系统 ID:SEFRETS登录网址:http://sef.rets.interealty.com:80/Login.asmx/LoginRETS 版本:1.5服务器软件:Microsoft-IIS/6.0

我也无法理解什么是 $rets_modtimestamp_field = "LIST_87";

请帮助我。我需要一些关于如何从 RETS 获取数据的建议。

最佳答案

问题出在您的 SearchQuery 中的参数。

搜索查询中的一个字段是 ListDate。查看包含元数据的附件 excel 文件,“ListDate”位于 StandardNames 下的 B 列中。 RETS specification默认使用系统名称(见下文)。您需要在 SearchQuery 函数的选项参数中指定 '"StandardNames"=> 1':

$search = $rets->SearchQuery("Property","ResidentialProperty","(ListDate=1990-01-01+)",array("StandardNames"=> 1));

另外,检查以确保您的 SearchQuery 的第二个参数 class 是正确的。为此,您可以使用 GetMetadataClasses在 PHRETS 中发挥作用。您也可以使用 retsmd.com使用您的 RETS 服务器 URL、用户名和密码登录。

$rets_modtimestamp_field 是一个日期时间值字段,指示上次修改列表的日期和时间。


在 RETS 1.7.2 规范文档的第 7.4.7 节中,http://www.reso.org/assets/RETS/Specifications/rets_1_7_2.pdf ,

“查询可以在查询中使用标准名称或系统名称(第 7.7 节)。如果客户端选择使用标准名称,它必须使用 StandardNames 来表明这一点参数...如果此条目设置为 ("0") 或不存在,则在搜索中传递的字段名称是元数据中定义的系统名称。”

关于php - 为什么搜索查询在 PHRETS 中没有显示任何结果?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27456595/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com