2013-05-02 98 views
0

我有一個使用php的網頁,並有一大堆用戶輸入數據的輸入字段,並將輸入轉換爲SQL語句來查詢某個數據庫。我成功解析了輸入字段並將SQL語句放在一起,但是當他們單擊「提交」按鈕時,所有輸入字段都被清除。我該如何做到這一點,所以每次用戶點擊「提交」時,這些輸入字段都不會被刪除?如何不清除php表單中的輸入字段?

+2

輸入元件的回波出來的值 – 2013-05-02 18:36:06

+0

我知道這已經被問過。只是要找到它。 – 2013-05-02 18:36:28

+0

我敢打賭,你不是第一個在這裏提出這個問題的人,但通常這應該已經在你使用的HTML參考文獻中列出。 https://developer.mozilla.org/en-US/docs/HTML/Element/Input – hakre 2013-05-02 19:12:07

回答

1

您需要檢查POST值(假設你使用POST)已經設置時頁面加載(因爲他們已經提交)。如果它們被設置,則將其內容回顯到表單域的值屬性中,或者根據域類型設置checked = checked等。

0

你有沒有在使用PHP會話和Cookies?

可以在會話存儲在表單中的值在數據庫中更新了用戶之前提交,然後檢查是否有用戶會話和值設置爲場輸出值否則輸出空。

2

存儲他們的局部變量一樣

<?php 
$name = ''; 
$last = ''; 

if(isset($_POST['post_me'])) { 
    $name = $_POST['post_me']; 
    $last = $_POST['last']; 
    //Process further 
} 
?> 
<form method="post"> 
    <input type="text" name="name" value="<?php echo $name; ?>" /> 
    <input type="text" name="last" value="<?php echo $last; ?>" /> 
    <input type="submit" name="post_me" /> 
</form> 
1

這樣的事情應該工作。

<? 
if(!isset($_POST['stackoverflow'])){ 
    $txt = ""; 
} else { 
    $txt = $_POST['stackoverflow']; 
} 
?> 

<!doctype html> 
<html lang="en"> 
<head> 
    <meta charset="UTF-8"> 
    <title></title> 
</head> 
<body> 
    <form action="" method="post"> 
     <input type="text" name="stackoverflow" value="<?= $txt ?>"> 
    </form> 
</body> 
</html> 
1

這一直爲我工作:

<input type="text" name="somename" value="<?php echo htmlspecialchars($_POST['somename']); ?>">