2014-07-22 48 views
-1

我是一個初學者網頁編程,需要從一個PHP變量的HTML輸入字段初始化幫助初始化一個HTML輸入文本字段。我有一個帶有輸入字段和按鈕的表格的php文件.javascript和jquery用於處理處理。現在我想從服務器獲取將存儲在php變量中的數據。這是一個代碼片段:從PHP變量

<body> 
<php? 
$voltage = "012"; 
// $_POST['voltage']; // tried this 

?> 

<table> 
    <td><input name="GETVOLTS_textfield" type="text" id="GETVOLTS_textfield" value="<?php echo $_POST['voltage'];?>" size="3" maxlength="3" /> 
     %</td> 
</table> 
</body> 

我得到一個消息未定義指數:電壓 在這個階段,我用XAMPP本地主機的工作,並沒有任何的數據庫,我需要能夠在本地前處理變量擔心數據庫。 任何幫助將不勝感激。

+2

我想你是指'<?php'。 –

回答

1

嘗試isset()

<input name="GETVOLTS_textfield" type="text" id="GETVOLTS_textfield" value="<?php echo isset($_POST['voltage'])?$_POST['voltage']:'';?>" size="3" maxlength="3" /> 
0

只需使用$voltage。如果表單提交值給腳本的$_POST陣列只會有它的價值。

+0

嗨,謝謝你的回覆。它現在正在工作,我將添加isset函數進行檢查。該問題已通過更改爲 ​​」size =「3」maxlength =「3」 />% 我現在可以傳遞這些數據庫處理文件使用jQuery $ .post() 非常感謝。 –

+0

BTW @Think不同的isset需要在()中,像value =「<?php echo(isset($ _ POST ['voltage'])?$ _ POST ['voltage']:$ voltage);?>」 –

0
<td><input name="GETVOLTS_textfield" type="text" id="GETVOLTS_textfield" value="<?php echo $voltage;?>" size="3" maxlength="3" /> 
+0

語法<?php的錯誤 – Vigneshwaran

+0

更改 Vigneshwaran

1

我得到一個消息未定義指數:電壓

有沒有張貼在形式voltage價值?這裏發生了一系列事件。首先你的服務器端代碼執行,那麼頁面呈現,然後用戶帖子的形式價值的服務器端代碼。因此,如果在第一步中,您正在尋找一個形式值:

$_POST['voltage']; 

這個值是不會在那裏,因爲用戶還沒有公佈它尚未。您可以嘗試使用它之前測試值:

if (isset($_POST['voltage'])) { 
    // the value exists 
} 

當同一頁面(因此,在同一臺服務器端代碼)同時用於創建形式和處理貼出這通常用於形成。如果你是這種情況,那麼你需要包含這樣的條件,因爲服務器端代碼不能使用尚未發佈的表單值。

0

1)可-是你應該考慮做(儘管它不是建議報告,這就是你想要做什麼)

$voltage = "012"; 
$_POST['voltage'] = $voltage; 

2)你不需要$ _ POST變量。只是回聲$電壓!

+1

指定一個'$ _POST'元素似乎是一個壞主意...... – David

+0

是的,完全,但我想告訴他在代碼開始時也有一個錯誤(或者這就是我認爲的那樣正試圖做)。 在這種情況下,分配$ _POST值是沒用的,是的。 – ChoiBedal

1

,如果你想使用變量$電壓你的代碼應該是這樣的:

<input name="GETVOLTS_textfield" type="text" id="GETVOLTS_textfield" value="<?php echo $voltage; ?>" size="3" maxlength="3" /> 

你可以用一組特定的$電壓張貼VAR

$voltage = $_POST['voltage']; 

,但如果您應該測試變量$ _POST ['voltage']被設置,因爲如果沒有發現或者只是這個變量沒有發佈,你會得到你提到的錯誤

你可以這樣做isset

if(isset($_POST['voltage']) 
{ 
    $voltage = $_POST['voltage']; 
} 
else 
{ 
    $voltage = ''; 
}