在PHP中如何将多个值从视图传递到控制器

在PHP中如何将多个值从视图传递到控制器,php,zend-framework2,Php,Zend Framework2,我是PHP新手,我尝试将2个整数从视图传递到控制器。我正在使用zend framework 2 这是我试图通过按钮将数据传递到控制器中的操作的方式,但我在操作中接收的值等于0,因此这是错误的,因为我的值不等于0 <td> <?php $url = $this->url('mediador', array('action' => 'associaCorrespondencia', 'idCompra' => $Compra[$i]['ID'

我是PHP新手,我尝试将2个整数从视图传递到控制器。我正在使用zend framework 2

这是我试图通过按钮将数据传递到控制器中的操作的方式,但我在操作中接收的值等于0,因此这是错误的,因为我的值不等于0

   <td>
        <?php $url = $this->url('mediador', array('action' => 'associaCorrespondencia', 'idCompra' => $Compra[$i]['ID'], 'idVenda' => $Venda[$i]['ID'])); ?>
        <form action="<?php echo $url; ?>" method="post">
            <div>
                <input type="submit" name="del" value="Associar" />
            </div>
        </form>
   <td>
我做错了什么?我收到的值始终等于零,并且与我通过参数得到的值不同。 提前谢谢

编辑:我的路线配置:

<?php

return array(
    'controllers' => array(
        'invokables' => array(
            'Mediador\Controller\Mediador' => 'Mediador\Controller\MediadorController',
        ),
    ),


   // The following section is new and should be added to your file
    'router' => array(
        'routes' => array(
            'mediador' => array(
                'type'    => 'segment',
                'options' => array(
                    'route'    => '/mediador[/:action][/:id]',
                    'constraints' => array(
                        'action' => '[a-zA-Z][a-zA-Z0-9_-]*',
                        'id'     => '[0-9]+',
                    ),
                    'defaults' => array(
                        'controller' => 'Mediador\Controller\Mediador',
                        'action'     => 'index',
                    ),
                ),
            ),
        ),
    ),

    'view_manager' => array(
        'template_path_stack' => array(
            'Mediador' => __DIR__ . '/../view',
        ),
    ),
);

您正在使用url zend view帮助程序:

要从视图帮助器生成查询字符串参数,需要使用如下查询键将其指定为第三个参数:

查看url生成:

<?php
$url = $this->url(
    'mediador',
    array(
         'action' => 'associaCorrespondencia'
    ),
    array(
        'query' => array(
            'idCompra' => $Compra[$i]['ID'], 
            'idVenda' => $Venda[$i]['ID']
        )
    )
);
?>

我们可以看看你的路线定义吗?但也许它应该是
$this->params()->fromQuery(…)使用路线定义更新帖子
<?php
$url = $this->url(
    'mediador',
    array(
         'action' => 'associaCorrespondencia'
    ),
    array(
        'query' => array(
            'idCompra' => $Compra[$i]['ID'], 
            'idVenda' => $Venda[$i]['ID']
        )
    )
);
?>
$idCompra = $this->params()->fromQuery('idCompra', 0);
....