在foreach循环php内部形成

时间:2016-01-05 17:28:51

标签: php forms foreach

我正在努力解决问题。

我在另一个foreach中有一个foreach - 这不是问题 - 当我尝试在嵌套的foreach中放置一个表单时,我的控制器没有做出反应。当我点击" +"按钮它应该添加订单,然后将我重定向到somewhere.php,否则,它应该将我重定向到nowhere.php。它只是没有重定向我 - 没有.php,哈哈 - 意味着isset($_POST['do_add'}无效。

有什么想法吗?

我的控制器:

<?php 
    $br = new Brand;
    $ord = new Order;
    $temp = new Template('templates/menu.php');
    $temp->br = $br->getAllBrands();
    $temp->car = new Car;
    echo $temp;
    if(isset($_POST['do_add'])) {
        $idPlate = $_POST['idCars'];
        if ($ped->addCar($idCar)) { 
            redirect('somewhere.php');
        } else {
            redirect('nowhere.php');
        }
    } 
?>

我的模板:

<table class = "table">
<?php foreach ($brands as $brand): ?>
    <thead class = "thead-inverse">
        <tr>
            <th> <?php echo $brand->name; // these are just some car brands ?> </th>
        </tr>
    </thead>
    <?php foreach ($cars->getCars($brand->idBrands) as $car): // here I get all the cars ordered by brands ?>
    <tbody>
        <form role = "form" method = "post" action = "carList.php">
            <tr>
                <td name = "idCar" value = "<?php echo $car->idCars; ?>"><p><?php echo $car->model; ?></p></td>
                <td>
                    <button name = "do_add" type = "submit">+</button>
                </td>
            </tr>
        </form>
    </tbody>
    <hr>
    <?php endforeach; ?>
<?php endforeach; ?>
</table> 

谢谢!

2 个答案:

答案 0 :(得分:1)

我认为你的问题就在这一行:

<td name = "idCar" value = "<?php echo $car->idCars; ?>"><p><?php echo $car->model; ?></p></td>

我从来没有听说过直接用表单提交td标签的值......你的意思是这样的(在td里面创建一个输入)?

<td><input type="text" name="idCar" value="<?php echo $car->idCars; ?>"</td>

答案 1 :(得分:0)

是什么让你:

cache.ccf

我认为它是空的,因为你只提交没有价值的按钮!否则尝试使用:

var_dump($_POST['do_add'])

致以最诚挚的问候,