2014-02-23 62 views
-1

我在我看來有3個錨點形式。當我點擊每一個它將我重定向到控制器中的getFeed函數。 的觀點:如何設置錨點形式的值

echo anchor('site/getFeed','Tehnology'); 
echo anchor('site/getFeed','Art'); 
echo anchor('site/getFeed','Science'); 

控制器:

function getFeed($feed_url){ 
    $content = file_get_contents($feed_url) 
    $x= new SimpleXmlElement($content);} 

我在做什麼來分配每個問題的鏈接$ FEED_URL variable.When我點擊科技投入$ FEED_URL一個地址,並調用getFeed功能($ FEED_URL)。當點擊Art $ feed_url時需要另一個地址並放入getFeed函數。

回答

0
echo anchor('site/getFeed/some_value','Tehnology'); 
echo anchor('site/getFeed/another_value','Art'); 
echo anchor('site/getFeed/some_value_etc','Science'); 
+0

它給了我一個錯誤「字符串不能被解析爲XML」。 – user3313651

0

您需要爲每個錨點添加第三個URL參數。例如

echo anchor('site/getFeed/' . $feed_url,'Tehnology'); 
echo anchor('site/getFeed/' . $feed_url,'Art'); 
echo anchor('site/getFeed/' . $feed_url,'Science'); 

所以第一個URL參數site/是控制器的名字,getFeed/是在你的控制器,然後後,任何其他URL參數將被傳遞給你的控制器功能的函數的名稱。你可以有更多,如果你想

echo anchor('site/getFeed/parameter1/parameter2/parameter3','Tehnology'); 

function getFeed($parameter1, $parameter2, $parameter3) { 
    $content = file_get_contents(base_url() . $feed_url); 
    try{ 
     $x = new SimpleXMLElement($content); 
    } catch (Exception $e) { 
     echo 'Couldn't form XML'; 
     exit(); 
    } 
} 
+0

我已經這樣做了,但它給了我一個錯誤(字符串不能被解析爲XML)。 – user3313651

+0

這是因爲$ content中的值不是XML。這可能是因爲文件不存在或者它不包含XML。所以我會先檢查一下。我還添加了一個例外來捕獲任何錯誤 – Pattle

+0

如果我用file_get_contents替換$ feed_url和它的地址一起工作。它給我一個錯誤(消息:file_get_contents(http :):未能打開流:無效的參數)當我嘗試將$ feed_url放入achor。 – user3313651