Php 用数组填充输入

Php 用数组填充输入,php,wordpress-theming,Php,Wordpress Theming,在我的jquery代码中,我有: $("#show").append("<img src=" +attachment.url+" alt="+attachment.alt+" title="+attachment.title+" description="+attachment.caption+" class='img-responsive img-thumbnail'/><input type='hidden' name='my_image_URL[]' value="+a

在我的jquery代码中,我有:

$("#show").append("<img src=" +attachment.url+" alt="+attachment.alt+" title="+attachment.title+" description="+attachment.caption+" class='img-responsive img-thumbnail'/><input type='hidden'  name='my_image_URL[]' value="+attachment.url+"></span>");
我试图在隐藏的输入中添加$URL数组

之后,如果工作正常:

            <?php
                if ($urls != '' ) {

                foreach ($urls as $url) { 
             ?>                         
                    <img src="<?php echo $url;?>"  class="img-responsive img-thumbnail " />
                    <input name="my_image_URL[]" value="<?php echo $url;?>"/>
                </div>               
            <?php
                 };
                }
            ?>  
但是在提交没有在屏幕上显示任何内容之后,在表单中正确保存所有其他输入,除了我试图保存数组的内容,如果我输入一些手动信息,就可以了。但我不明白为什么它不捕获每个图像输入的my_image_URL[]名称。形式上的动作如下:

<Form method = “post” action = “options.php”>
我正在使用设置API

谢谢

我试图在隐藏的输入中添加$URL数组

如果我理解的话,您正在尝试将数组值存储在隐藏输入中,以便以后可以检索它。问题是,这不起作用

echo '<input type="hidden" name="imagens_home" value="'.$urls.'"/>'; 
现在,隐藏的输入有一个常规字符串。稍后,在发布表单时,您可以检索它:

$urls = json_decode($_POST['imagens_home'], true)

回响它是隐藏类型,所以你确定不起作用吗?它实际上不起作用。我暂时删除了隐藏的$URL。它是一个PHP数组,你不能将它连接到这样的字符串。您应该将其转换为一个字符串,该字符串的格式与html值数组属性相对应是的,我尝试使用json_decode和json_enconde,但我认为我做得不正确非常感谢您的回复,但它仍然不适用于我,输入仍然为空。“活到死”用户解决方案也会返回empty@Gislef请非常具体。哪个输入仍然是空的?什么时候如何检查?@Gislef在tema_home_imgs中,您正在执行json_encode$URL,但从未为$URL赋值,因此json_encode不编码任何内容,您将获得一个空白输入。编码之前,首先设置变量:$URL=$\u POST['my\u image\u URL']。只有这样,你才能尝试对$URL数组进行编码。我的问题有误,我修正了这个问题。这样它就返回空的状态。
<input id="my_upl_button" type="button" value="Escolher Imagens" /><br/>

    <div class="row">
            <div id="exibe" class="sortable">       

            <?php           
            $urls = json_decode($urlsImagens, true);
                if ($urls != '' ) {
                foreach ($urls as $url) { 
             ?>          
                    <img src="<?php echo $url;?>"  class="img-responsive img-thumbnail " />
                    <input name="my_image_URL[]" value="<?php echo $url;?>"/>

            <?php
                 };
                }
            ?>
    </div>
    </div>
 <?php settings_errors();?>

 <form method="post" action="options.php">
    <?php settings_fields ('tema-setting-group'); ?>

    <?php do_settings_sections (
    'opcoes_do_tema'//string $page

    ); ?>



    <?php submit_button (); 

    ?>  

 </form>
echo '<input name="imagens_home" value="' . htmlspecialchars(json_encode($urls)) . '" />';
If (isset ($ _POST ['my_image_URL'])) {
 Print_r ($ _ POST ['my_image_URL']);

}
<Form method = “post” action = “options.php”>
echo '<input type="hidden" name="imagens_home" value="'.$urls.'"/>'; 
echo '<input type="hidden" name="imagens_home" value="'.$json_encode($urls).'"/>'; 
$urls = json_decode($_POST['imagens_home'], true)