带数组的form_open无效

时间:2016-05-20 03:41:37

标签: php arrays codeigniter

我通过php中的form_open传递它后,我在使用我的数组时遇到了麻烦。我正在使用带有mvc模式的codeigniter

这是我在视图中的示例代码:

<?php 
    $fdata=array("ID"=>$id,
        "DOC_CODE"=>$doc_code,
        "DOC_NAME"=>$doc_name); ?>

<div>
    <?php echo form_open("document", $fdata, "target='_blank'");?>
        ......
    <?php echo form_close(); ?>
</div>

在控制器中:

//first try
public function login() {
    print_r($fdata);
}

//second try
public function login(fdata) {
    print_r($fdata);
}

结果是消息:未定义的索引:fdata

2 个答案:

答案 0 :(得分:2)

form_open函数允许最多两个参数

  

1 =&GT;发布网址

     

2 =&GT;属性数组

在您的情况下,您需要在属性数组

中放置“target ='_ blank'”
<?php 
$fdata = array("ID"=>$id,
    "DOC_CODE"=>$doc_code,
    "DOC_NAME"=>$doc_name,
    "target" => "_blank"  ); ?>

<div>
<?php echo form_open("document", $fdata);?>
    ......
<?php echo form_close(); ?>
</div>

现在应该可行

答案 1 :(得分:-1)

试试这个

<?php echo form_open("document/".$fdata, "target='_blank'");?>
控制器中的

public function login($fdata) {
   print_r($fdata);
}