2如果Issets - 工作不正常

时间:2017-08-30 21:20:06

标签: php

我有一个表单,其输入具有相同的名称,值是网址。

如果名称存在,则在第一个if ISSET中,变量$urls接收名称数组。

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

我将此数组从第一个isset转换为JSON,我想将其保存到另一个输入中。

我要保存的输入如下所示:

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

这样的输入是这样的:

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

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

全部&#34;工作&#34;,但是:当我点击保存屏幕更新后,刷新屏幕后输入中出现$urls变量中的JSON内容,没有保存。要保存,我必须再次点击提交。

如何在提交时单击一次,并且已经将输入填写为已保存在数据库中的tbm,而无需双击提交?

1 个答案:

答案 0 :(得分:0)

代码按预期工作。您使用第一次提交将数据从$_POST['my_image']移至表单中,因此当您再次提交时,您的数据位于$_POST['imagens_inicio']

相反,我建议您将代码更改为:

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

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

然后你只需要提交表格一次。