2013-06-30 45 views
2

這裏是我的代碼:如何獲得一個文本框的值在同一頁上的PHP

<form action="" method="get" > 
    <input type="text" name="un"> 
    <input type="password" name="un2" /> 
    <input type="submit" value="submit" name="submit" /> 
</form> 

<?php 
    $users1 = $_GET["un"]; 
    $id  = $_GET["un2"]; 
    echo $users1; 
?> 

我無法通過這種方式

錯誤顯示它:

Notice: Undefined index: un in C:\wamp\www\vas1\register1.php on line 31 

line 31:

$users1 = $_GET["un"]; 
+1

的$ _GET只設定,當您提交頁面,除非頁面提交你不會得到表單元素的內容。你也有方法作爲發佈,這意味着你需要$ _POST而不是$ _GET –

+0

請注意,有些工具比如Firefox的Firebug擴展,在開發這些東西的時候非常寶貴。 – Strawberry

回答

3

I這只是一個通知。你需要檢查,如果被提交的表單:

if(!empty($_POST)) { 
    $users1 = $_POST['un']; 
    echo $users1; 
} 

你不能使用get使用,因爲您的形式使用post

<form action="" method="post"> 
+1

實際上我想顯示在同一個網頁上的值,所以我已經在表單方法中更改「發佈」「獲取」但仍然不顯示值 –

+0

如果您更改發佈以獲取表單確保'$ _POST ['un ']'更改爲'$ _GET ['un']'並將'!empty($ _ POST)'改爲'!empty($ _ GET ['un'])' – SeanWM

2

您發送POST請求

​​3210

然後您在獲取請求中獲取參數

$users1 = $_GET["un"]; 

你做錯..do這

$users = $_POST["un"]; 
+0

實際上我想在同一網頁上顯示數值我已經改變「帖子」的形式方法「獲得」,但仍然不顯示的價值 –

+0

@MaryamButt你仍然需要幫助嗎?或者你有我們的解決方案 – hellosheikh

+0

是啊得到​​瞭解決方案 –

2

你在你的代碼有幾個問題。

首先,在第一頁加載textarea尚未提交,因此請求數據將爲空白。你需要一個isset()來測試它。

其次,當您的表單使用POST時,您的PHP使用$_GET,因此您需要更改這些值。

全部放在一起:

<form action="" method="post" > 
    <input type="text" name="un"> 
    <input type="password" name="un2" /> 
    <input type="submit" value="submit" name="submit" /> 
</form> 

<?php 
    if (isset($_POST['un'])) { 
     $users1 = $_POST["un"]; 
     $id = $_POST["un2"]; 

     echo $users1; 
    } 
?> 
+0

實際上,我想顯示在同一網頁上的值,所以我已經改變「後」形式方法「獲得」,但仍然不顯示值 –

相關問題