2017-08-30 94 views
0

我有一個輸入具有相同名稱的表單,值是urls。如果名稱存在,則變量$urls接收到名稱數組。2如果Issets - 無法正常工作

If (isset ($_POST['my_image'])) { 
     $urls = htmlspecialchars(json_encode($_POST['my_image'])); 
} 

我從第一isset到JSON變換該數組,我想將其保存到另一個輸入端。

輸入我要救這個樣子的:

<Input type="text" name="imagens_inicio" value="<?php echo $urls; ?>" /> 

此輸入這樣和Isset:

If (isset($_POST['imagens_inicio'])) { 

     Update_option('imagens_inicio', $ _POST['imagens_inicio']); 
} 

這是所有「工作」,而是:當我點擊保存屏幕刷新屏幕後,更新和$urls變量中的JSON內容會出現在輸入中,而不保存。要保存我必須再次點擊提交。

如何在提交時點擊一次,並且已經填入輸入,因爲tbm已經保存在數據庫中,而無需雙擊提交?

+1

只是將它保存在第一個條件中,而不是將其轉儲到另一個字段中? 'if(isset($ _ POST ['my_image'])){ Update_option('imagens_inicio',htmlspecialchars(json_encode($ _ POST ['my_image']))); }' – Steve

+0

你必須做單身保存/更新本身 –

+0

@Steve謝謝你的答案爲我工作。如果您想創建回覆,我會將您的回答標記爲已解決 – Gislef

回答

0

代碼按預期工作。您正在使用第一次提交將數據從$_POST['my_image']移到表單中,因此當您再次提交數據時,您的數據爲$_POST['imagens_inicio']

相反,我建議你改變你的代碼是這樣的:

If (isset ($_POST['my_image'])) { 

    Update_option('imagens_inicio', htmlspecialchars(json_encode($_POST['my_image']))); 
} 

然後你只需要提交一次的形式。