2016-04-06 107 views
2

我知道使用jQuery獲取鏈接的文本值非常容易。 但是不可能僅使用PHP獲取文本值?請在我的代碼看看:如何使用PHP獲取點擊鏈接的文本值

echo '<table>' 
foreach($array['data']['results']['titles'] as $data) { 

    $title = $data['title']; 
    $id= $data['id']; 
    $url = $data['url']; 

    echo '<tr>'; 
    echo '<td>' . '<a href="movie.php" target="_blank">'.$title.'</a>' . '</td>'; 
    echo '<td>' . '<a href= ' .$url . ' target="_blank" >IMDb Link</a>' . '</td>'; 
    echo '</tr>'; 
}  

echo '</table>'; 

This picture shows the output of my code

假設用戶點擊了第三部電影 - 蝙蝠俠:動畫系列。如何讓我的movie.php頁面看起來就像這樣 - (下圖)

The Link Text (which is $title) should be passed to the movie.php page and also the IMDb Link of the corresponding movie (which is stored in the $url variable)

我知道是用$ _SESSION的唯一途徑,但它不會在這種情況下工作,因爲它只會店&傳遞foreach循環的最後一個值

請在這方面幫助我。謝謝:)

+2

Php對你電腦上發生的事情一無所知,它是服務器端。你可以使用$ _GET參數來做到這一點,並將電影標題作爲href =「'。$ url。'?movie ='。urlencode($ movie_title)。'」,但這種做法太糟糕了。你需要的是重新思考你處理數據的方式,給電影分配唯一的ID並通過它們而不是電影名稱。 – Eihwaz

+1

你可以像'href =「movie.php?n = $ title」'' – chaos505

回答

2

考慮到$ id作爲數據庫中特定影片的行ID。您可以在這裏使用網址編碼。您的密碼必須爲

echo '<td>' . '<a href="movie.php?id='. urlencode($id) . '" target="_blank">'.$title.'</a>' . '</td>'; 

點擊後,您的網址看起來會像。

movie.php?id=3 

在您movie.php文件使用的$ id = urldecode($ _ GET [ '身份證']);以獲取電影ID,並且您可以再次從數據庫中獲取相關數據。

讓我知道你是否有任何問題。

+0

'''_GET'那樣傳遞值我猜urlencode沒有工作.. $ id值顯示在url ... –

+1

這不是加密或隱藏數據。該函數將用於URL的查詢部分,作爲將變量傳遞到下一頁的便捷方式。我建議您查看手冊http://php.net/manual/en/function.urlencode.php –

1

嘗試發送帶有適當的主鍵的所有信息,或在這裏是運行時解決方案

echo '<td>' . '<a href="movie.php?name='.$title.'&imdblink='.$url.'" target="_blank">'.$title.'</a>' . '</td>'; 

不要忘記來urlencode變量

1

每一個環節應該包含獨特提起類似$id讓你url應該是echo '<td>' . '<a href="movie.php?id='.$id.'" target="_blank">'.$title.'</a>' . '</td>'; 你可以傳遞$id的編碼值,這樣最終用戶無法猜出這個值。在movie.php中你解碼了$id &顯示信息的基礎上$id