2012-10-22 201 views
-3

我有這樣PHP和HTML表單輸入

<html> 
<body> 
<center> 
<FORM action="" method="post"> 
<input type="hidden" name="form_action" value="1"> 
<table border=1> 
<tr><td>test post</td><td><input type="text" size="60" name="post" value="http://site.com/"></td></tr> 
</table> 
<br> 
<INPUT class=submit type="submit" value="[SUBMIT]" name="Submit"> 
</FORM> 
</center> 
</body> 
</html> 
<? 
if ($_POST['form_action']) { 

print_r($_POST['post']); 
} 
?> 

我要打印的表格後,當有人按提交button.Where一個PHP代碼是什麼問題?

+2

我們通常希望看到您已經做出了一些努力來解決您自己的問題。 [你有什麼嘗試?](http://mattgemmell.com/2008/12/08/what-have-you-tried/)和結果是什麼? – gcochard

+0

我提到了我的努力brother.But有一些問題,我的代碼,這就是爲什麼我沒有得到所需的輸出。我認爲stackoverflow.com的天才將解決我的問題,這就是爲什麼我張貼在這裏。 –

+0

您首先需要了解幾件事:在您想要的內容中包含_two_進程:1.)提供html表單和2.)「打印」POST變量。你無法在一次運行中對兩件事情進行編碼,並期望服務器能夠「神奇地」按照你喜歡的方式做事。 – arkascha

回答

0

該代碼可以工作。

此表格可能會在表單尚未發佈時發生錯誤,但它位於底部,因此應該已生成HTML表單。

if ($_POST['form_action']) 

您可以將其更改爲

if (array_key_exists('form_action', $_POST)) 

這將糾正檢查。

之後,表單應該可以工作,但是請注意,表單將在每個請求中再次生成,並且實際輸出print_rd位於輸出的底部。由於它位於html正文的外部,因此它可能會呈現在頁面的底部,或者根本不會呈現它。

當您查看源代碼頁面時,您應該能夠看到輸出。

1

嘗試:

<? 
if (isset($_POST['form_action'])) { 

echo($_POST['post']); 
} 
?> 

isset看起來wheter變量/鍵定義。

這應該工作。希望有所幫助。

+0

你讀過他給出的片段嗎? – arkascha

+0

是的,爲什麼?你可以添加$ _POST ['post']。當然。 (正如我現在所做的那樣) – tobspr

+0

他輸出後關閉標記... – arkascha

0

這樣的工作是肯定的..

但我認爲你應該投入更多的努力自己解決這些問題很傻!.. :-)

<?php 
if (isset($_POST['form_action'])) { 

print_r($_POST['post']); 
exit; 
} 

print ' 
<html> 
<body> 
<center> 
<FORM action="" method="post"> 
<input type="hidden" name="form_action" value="1"> 
<table border=1> 
<tr><td>test post</td><td><input type="text" size="60" name="post"  value="http://site.com/"></td></tr> 
</table> 
<br> 
<INPUT class=submit type="submit" value="[SUBMIT]" name="Submit"> 
</FORM> 
</center> 
</body> 
</html>'; 

?>