从视图中的php变量中获取值

时间:2016-05-05 14:06:03

标签: php html cakephp-3.0

我有一个表单,我有多个上传按钮。 横幅,封面和HeadlinerX,X被数字1,2 ...... X取代 这意味着我可以有多个按钮用于上传标题。

我有这个隐藏的输入(在我看来),我存储了头条新闻的数量。

<input type="hidden" name="qtd_headliners" id="qtd_headliners" value="<?php echo $qtd_headliners?>" />

我尝试过这种方式(控制器中的方法)来访问它,但它没有做任何只添加横幅和封面的事情。

public function uploadOptions(){

    $opt = array();

    for ($i=1; $i <= $_POST['qtd_headliners']; $i++) { 
        if(!array_key_exists($i, $_POST))
            continue;

        $headliner = $_POST('headliners'.$i);
        $opt[$i] = $headliner;
        $this->set('Headliner' . $opt[$i] , 'debug');
    }

    array_push($opt, 'banner', 'cover');

    return $opt;
}

有人能指出我正确的方向吗?

2 个答案:

答案 0 :(得分:0)

检查该功能的这个工作版本:

function uploadOptions(){

    $opt = array();

    for ($i=1; $i <= $_POST['qtd_headliners']; $i++) { 
        if(!array_key_exists('headliners'.$i, $_POST)) // Note the 'headliners' string
            continue;

        $headliner = $_POST['headliners'.$i]; // $_POST is an array, so access its items with []
        $opt[$i] = $headliner;
        $this->set('Headliner' . $opt[$i] , 'debug');
    }

    array_push($opt, 'banner', 'cover');

    return $opt;
}

答案 1 :(得分:-1)

几分钟后重新阅读代码,我发现了错误和解决方案。

public function uploadOptions(){
    $opt = array();
    array_push($opt, 'banner', 'cover');

    for ($i=1; $i <= $_POST['qtd_headliners']; $i++) { 
        $headliner = 'headliner'.$i;
        array_push($opt, $headliner);
    }

    return $opt;
}

非常感谢@Cili和@arilia