Я новичок в PHP, и я пытаюсь передать 2 целых числа из моего представления в мой контроллер. Я использую zend framework 2.Как передать несколько значений из представления в контроллер в PHP
Это то, как я пытался передать данные в свое действие в контроллере с помощью кнопки, но значения, которые я получаю в своем действии, равны 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>
Вот как я получаю значение в моем действии:
public function associaCorrespondenciaAction(){
$idCompra = $this->params()->fromRoute('idCompra', 0);
$idVenda = $this->params()->fromRoute('idVenda ', 0);
}
что я делаю неправильно? Значения, которые я получаю, всегда равны нулю и не являются теми же, которые я прошел через параметр. Спасибо заранее!
EDIT: Мой маршрут конфигурация:
<?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',
),
),
);
Можем ли мы видеть ваше определение маршрута? Но, возможно, это должно быть '$ this-> params() -> fromQuery (..);' http://stackoverflow.com/a/12077127/3392762 – Progrock
Обновлено сообщение с определением маршрута – sergiogomesdev