0

我正在处理一些后端项目,并希望通过 jQueryUI 选项卡加载表单

<div id="parameters_tabs" style="width:920px;">
<ul>    
            <li><a href="<?=base_url()?>link1"><?=$this->lang->line('tab_name')?></a></li>                
</ul>   
</div>

作为回应,我制作了一些表格,如下例所示:

<?
                    for ($i = 0; $i < count($groups); $i++)
                    {
            ?>                                                      
                            <form id="group_form<?=$i?>" method="POST" action="<?=base_url()?>update_group">
                                <input type="hidden" name="<?=$this->config->item('csrf_token_name')?>" value="<?=$token?>" />
                                <input type="hidden" name="id" value="<?=$groups[$i]['id']?>" />                                                
                                <tr>                                                        
                                        <td>
                                            <input type="text" value="<?=$groups[$i]['name']?>" name="name" />                                                                
                                        </td>
                                        <td>
                                            <input type="text" value="<?=$groups[$i]['short_name']?>" name="short_name" />
                                        </td>
                                        <td>
                                            <textarea cols="80" rows="4" name="desc"><?=$mgroups[$i]['desc']?></textarea>                                                    
                                        </td>                                            
                                        <td style="width: 30px">
                                                <a class="save" onclick="$('#group_form<?=$i?>').submit();"><?=$this->lang->line('save')?></a>                                                    
                                        </td>
                                </tr>
                            </form>                                                                                    
                <?
                    }
                ?>

单击“保存”时,我收到有关 CSRF 保护的标准错误:

“遇到错误

您请求的操作是不允许的。”

谁能帮助我并告诉我哪里出错了?当然,在源代码中,我看到了正确的 csrf_token_name。

4

1 回答 1

0

当我遇到同样的问题时,这篇文章帮助了我。使用内置的表单助手form_open() 函数也可能有助于解决问题(因为它会为您生成隐藏的 CSRF 字段)。

于 2013-07-11T12:27:45.650 回答