基本上这是一个搜索栏,我把搜索到的术语放在api调用网址中,但是我得到了
警告:simplexml_load_file()[function.simplexml-load-file]:I / O警告:无法加载外部实体“”
任何想法?
代码:
if (!empty($_POST['searchbird'])){
$searchbird=rawurlencode($_POST['searchbird']);
$searchCode = "http://ebird.org/ws1.1/data/obs/region_spp/recent?rtype=subnational2&r=US-AZ-013&sci=$searchbird";
$url_headers = @get_headers($searchCode);
if($url_headers[0] == 'HTTP/1.1 200 OK') {
$xml = simplexml_load_file($url);
print_r($xml);
} else {
// Error
echo $searchCode;
print_r($url_headers);
exit("failed to load XML");
}
} else {
$searchbird = '';
$form = "<form method='post'>
<strong>Enter the name of a Bird</strong>
<input type='text' name='searchbird' value='$searchbird' />
<input type='submit' name='submit' value='submit' />
</form>";
echo $form;
}
答案 0 :(得分:0)
您希望将函数中的变量从$url
更改为$searchCode
,因为$url
变量为空且未在任何位置设置。
if (!empty($_POST['searchbird'])){
$searchbird=rawurlencode($_POST['searchbird']);
$searchCode = "http://ebird.org/ws1.1/data/obs/region_spp/recent?rtype=subnational2&r=US-AZ-013&sci=$searchbird";
$url_headers = @get_headers($searchCode);
if($url_headers[0] == 'HTTP/1.1 200 OK') {
$xml = simplexml_load_file($searchCode);
print_r($xml);
....