2013-04-13 33 views
1

我真的是新來的PHP,但它是真棒語言:)如何使用php發送結果到窗體?

我創建了簡單的數學計算腳本,從變量方面的形式輸入和執行簡單的計算。我希望以另一種形式顯示結果,而不是簡單地顯示在頁面的底部。

<html> 
<body> 
<p>Simple PHP script for cloning calculations</p> 
<form name="form1" method="post" action=""> 
<p> 
<label for="vector_lenght">La taille du vecteur (kb)</label> 
<input type="text" name="vector_lenght" id="vector_lenght"> 
</p> 
<p> 
<label for="insert_lenght">La taille de l'insert (kb)</label> 
<input type="text" name="insert_lenght" id="insert_lenght"> 
</p> 
<p> 
<label for="conc_insert">La concentration de l'insert</label> 
<input type="text" name="conc_insert" id="conc_insert"> 
</p> 
<p> 
<input type="submit" name="ratio_calc" id="ratio_calc" value="Calculer"> 
</p> 
<p> 
<label for="ratio">Le ratio à utiliser</label> 
<input type="text" name="ratio" id="ratio"> 
</p> 
<p> 
<label for="ratio_1">ratio 1:1</label> 
<input type="text" name="ratio_1" id="ratio_1"> 
<br> 
<label for="ratio_3">ratio 1:3</label> 
<input type="text" name="ratio_3" id="ratio_3"> 
<br> 
<label for="ratio_5">ratio 1:5</label> 
<input type="text" name="ratio_5" id="ratio_5"> 
</p> 
</form> 

<?php 

if($_POST['ratio_calc']!=''){ 
define("conc_vector", 100); 
$vector_lenght = $_POST['vector_lenght']; 
$insert_lenght = $_POST['insert_lenght']; 
$conc_insert = $_POST['conc_insert']; 
$result = (conc_vector * $insert_lenght)/$vector_lenght; 
echo "<h1>$result</h1>"; 
} 


?> 

</body> 
</html> 
+0

您可以創建在同一個頁面的表單和回聲一些輸入元素 – chepe263

回答

3

在您的開放表格標籤中,'action'屬性指定了什麼文件應該接收您在提交表單時創建的HTTP請求。因爲它現在是一個空字符串,並且該腳本默認將數據發回到當前腳本。

(我認爲這另一種形式是在不同的頁面 - 如果不是,跳到最後的代碼片段)

因此,創建一個表示要包含你的結果頁的其他PHP腳本,並把新腳本的名稱作爲'action'屬性的值。在新腳本中,您可以通過$ _POST []超全局(與已發佈代碼中已存在的相同方式)檢索表單發送的值。

如果新的頁面被命名爲resultPage.php(並且是在同一個目錄中您發佈的腳本),你的表單標籤應該是這樣的:

<form name="form1" method="post" action="resultPage.php"> 

如果你想要的數據顯示內在新的頁面形式,做這樣的事情:

<input type="text" value="<?php echo $_POST['conc_insert'] ?>"> 
+0

看來工作的價值屬性裏面的值!其實,我直接在同一頁面上顯示,我只是想在文本框中而不是在頁面的底部。我忘了我實際上可以在html文件中的任何地方調用php,包括textfield標籤。非常感謝您的迅速響應!你可能會在這裏經常看到我;)THX再次 –

相關問題