2013-03-31 59 views
0

我有一個表單,我從中獲取兩個變量的值,用戶名和密碼使用POST方法。通過變量,其值可以每次都改變,從一個PHP頁面到另一個

$Username=$_POST['Username']; 
$Password=$_POST['Password']; 

我試過使用下面的代碼將這些變量傳遞給另一個php頁面。

<a href="abc.php?Username=$Username & Password=$Password">Click here</a> 

在另一頁,我試圖打印變量如下。

$User=$_GET['Username']; 
echo $USer; 

但是,我沒有得到存儲在變量中的值。相反,它打印「$用戶名」作爲錨標記中給出的值。

我只需要打印存儲在變量$ Username中的值。

請幫忙。提前致謝。

+0

''Click here不PHP代碼。 – Oswald

+0

是地址欄,顯示正確的「用戶名」值? – Amir

回答

1

你正在尋找以下:

<a href="abc.php?Username=<?php echo $Username; ?>&Password=<?php echo $Password; ?>">Click here</a> 

雖然你要小心,如果變量包含特殊字符。所以,我建議使用:

<?php echo urlencode($Username); ?> 

<?php echo urlencode($Password); ?> 
+0

+1建議轉義輸入 – mabi

0

因爲我們還沒有表示,這是PHP代碼,$Username被解釋爲HTML,導致$Username作爲輸出。爲了輸出的實際值,你應該添加適當的標籤,例如像這樣:

<a href="abc.php?Username=<?php echo $Username; ?> & Password=<?php echo $Password; ?>">Click here</a> 

順便說一句,因爲你的代碼,你是不是希望echo什麼,因爲變量情況下,PHP敏感,所以$USer在你的echo$User之前的行是兩個不同的變量。

還要注意的是:

  • 你不應該通過URI的密碼通過在首位,

  • 你似乎沒有逃脫輸入,

  • 前的空白並且href屬性中的「&」字符可能不是您真正想要做的。

0

您需要知道$ Username實際上是一個PHP變量,而不是HTML CDATA字符串。將您的鏈接代碼轉換爲:

<a href="abc.php?Username=<?php echo $Username; ?>&Password=<?php echo $Password; ?>">Click here</a> 
0

我認爲如果您將它們放入會話中會更好。

你可以這樣說:

$Username=$_POST['Username']; 
$Password=$_POST['Password']; 

session_start(): 
$Username = $_SESSION['usernameSession']; 
$Password = $_SESSION['passwordSession']; 

在其它頁面只需調用會話

session_start(); 

echo ".$_SESSION['usernameSession']"; 
+0

歡迎來到SO!爲了OP的好處,你能否在答案中增加更多的上下文?也就是說,你爲什麼認爲使用這樣的會話更好? – Derek

相關問題