2011-06-03 61 views
3

我有一個由數據庫動態構建的頁面。對於動態構建的每一件事,我想要一個鏈接彈出一個新窗口,並且新窗口將根據數據庫中的第一頁上的哪個項目被點擊來填充列表。我已經嘗試POST方法並將變量發佈到URL(我知道這是危險的)。另一件事使得這個獨特的是,被點擊的鏈接實際上不是一個頁面的鏈接,但我做了一些Javascript調用一個函數,打開一個新的窗口和一個新的PHP頁面,因爲打開一個整個新頁面只是一個列表。我該怎麼做呢?如果你需要更多的澄清,我會盡我所能使它更清晰。發佈一個php變量到一個新窗口

我建立一個表,它會像這樣的鏈接:

<td><a href="#" style="font-weight:normal; font-style:italic" onclick="function()">Do Stuff</a></td> 

function function(){ window.open("page.php", "blank"," toolbar=no, width=400, height=350, top=50, left=50, scrollbars=yes"); }

的()函數將打開一個新窗口,新的PHP頁面。問題是如何讓PHP變量到新窗口。

+0

關於jQuery的什麼開? – NAVEED 2011-06-03 13:02:48

+2

請詳細說明您的問題與一些示例編碼 – 2011-06-03 13:03:16

回答

5

簡單版本

echo "<a href=\"#\" onclick=\"window.open('youPopUpPage.php?value=$value');\">link</a>"; 

到youPopUpPage.php

$value=$_GET["value"]; # retrive value from calling page 

與js函數

<td><a href="#" style="font-weight:normal; font-style:italic" onclick="openPage(<?php echo $value ;?>)">Do Stuff</a></td> 


<script type="text/javascript"> 
function openPage(value){ 
window.open('youPopUpPage.php?value='+value);} 
</script> 
+0

謝謝,這完美的作品!我是Javascript新手,我真的想知道這種方法是否可行。萬分感謝,你是一位紳士和學者。 – Chris 2011-06-03 13:30:33

2

確保你只是路過的ID,這並不意味着任何東西給任何人,然後做這樣的事情與你鏈接:

echo "<a href='/myaddress?id=".$id."'>my link</a>"; 

上的新窗口,那麼你就可以得到價值用GET :

$id = mysql_real_escape_string($_GET['id']); 

有了這個ID,你應該能夠查看你的數據庫,找到你想要的實際內容。

+0

這不會工作,因爲我的鏈接不直接去一個地址,它首先調用一個js函數。 – Chris 2011-06-03 13:08:43

+1

然後將該值傳遞給該函數,並使函數將其添加到請求中。 – 2011-06-03 13:20:01