2011-05-17 105 views
1

我已經使用curl來獲取網頁。本頁有鏈接。在單擊鏈接時,在curl提取頁面上,我希望JQuery執行curl腳本來獲取該鏈接。我有以下代碼..JQuery鏈接點擊執行卷曲

這是我的索引頁,它通過curl獲取example.com並將它回顯出來。

<html> 
<head> 
<title>Public</title> 
<script type="text/javascript" src="click.js"></script>; 
</head> 

<?php 
$ch = curl_init(); 
curl_setopt ($ch, CURLOPT_URL, 'www.example.com'); 
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1); 
$curl_response = curl_exec($ch); 
curl_close($ch); 
echo $curl_response; 
?> 

click.js 我針對的標籤,所以當任何鏈接被點擊,這將執行。這會工作嗎?

$(".a").click(function(){ 
$.getScript("curllink.php"); 
}); 

這是我想要的JS時與標籤 curllink.php鏈接

<?php 
$ch = curl_init(); 
curl_setopt ($ch, CURLOPT_URL, 'WHAT DO I PUT HERE?'); 
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1); 
$curl_response = curl_exec($ch); 
curl_close($ch); 
echo $curl_response; 
?> 

請替我檢查了這一點,並確定我做了任何錯誤運行該腳本。謝謝

+0

我有這麼多的問題......你爲什麼試圖跑步才能走路?首先在哪裏''標籤,2.什麼'$ .getScript()'? 3.你的網站內容是?或第三方網站? – Val 2011-05-17 11:02:53

+0

因爲我正在嘗試做某件事情,而且涉及我必須這樣做。第一個代碼塊是我的網站。它提取example.com並回顯它,所以我的網站看起來與example.com完全一樣。然後,我點擊我網站上的鏈接。它現在重定向到我不想要的example.com(原始網站)。我希望它獲取example.com頁面的鏈接並將其顯示在我的網站上。 標籤是每個鏈接都是標籤。其餘的我不知道我試圖通過拼湊可能起作用的東西來找到答案。這就是爲什麼我要求幫助。 – Michael 2011-05-17 14:21:08

+0

你想誤導人們嗎?因爲你沒有從我那裏得到任何幫助,大聲笑, – Val 2011-05-17 15:19:15

回答

1

儘管您仍然需要對傳入文件進行一些解析,但我認爲您希望攔截腳本調用並防止默認行爲。

你的jQuery看起來會像這樣:

$('a').click(function(){ 
    location.href='curllink.php?url='+escape($(this).attr('href')); 
    return false; 
}); 

PHP看起來是這樣的(爲了簡化不再捲曲:

<?php 
    echo file_get_contents($_REQUEST['url']); 

我沒有測試過,但應該工作...不應該需要跳過傳入的URL參數

更新的jQuery 您需要將thi當你得到頁面內容後

$('a').live('click',function (e){ 
    var href = $(this).attr('href'); 
    href= href.replace('example.com','your_website.com'); 
    e.preventDefault(); 
    window.location.href = href; 
    return ; 
}); 
+0

其他文件怎麼樣curllink.php我該如何解決這個問題? – Michael 2011-05-17 11:03:19

+0

第二塊(PHP)是我建議用於替換curllink.php的完整版本。 – 2011-05-17 11:04:36

+0

實際上,這是有問題的...這不考慮相對URL。你需要對這些URL進行解析......很可能在JavaScript中。 – 2011-05-17 11:06:51