2013-04-02 55 views
0

基本上这是一个搜索栏和我走的搜索项,并把它的API调用的网址,但我越来越未能加载外部实体“”

警告:使用simplexml_load_file()函数.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

你在哪里定义'$ url'? –

+0

您的网址为空或为空;你在哪里设置它? – Ibu

+0

在你的配置中,你看着allow_url_fopen –

回答

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); 
.... 
+0

非常感谢你......它总是简单的答案! –

相关问题