如何在会话变量中存储多行查询并将其与foreach结合使用

时间:2019-02-15 04:44:50

标签: php mysql session

*我正在尝试将SQL查询从PHP Controller文件传送到PHP View文件。我已经动脑了好几个小时了。我发现我的主要问题是我不知道将数据从PHP传送到未开始REQUEST请愿书的另一个文档。 PHP控制器代码(请求)来自其他文档(votar1.php)的提交。

我知道只有在使用onclick按下按钮(类型按钮)时才这样做,但是不知道何时由提交按钮触发代码。在php上嵌入javascript绝对不适合我。*

↓↓↓↓↓↓↓↓↓(重点在此更好)。 ↓↓↓↓↓↓↓↓↓↓↓↓

Buuut,我想我现在已经接近解决方案,我一直在尝试将查询存储在SESSION中,所以我更喜欢这种解决方案。当查询仅返回您一行时,这似乎很简单,但是当查询返回多于一行时,我不知道如何处理它。所以我需要知道:

  • 如何在SESSION中存储多行查询
  • 如何使用它(↑)使用foreach在表中显示数据。

如果您能就上述这两件事给我提供一些指导,我将非常感谢↑(请不要忘记第二件事,因为我不知道该如何处理)。

控制器(controladorPartidos.php):

include 'conexionBBDD.php';
session_start();
----other code----      
if (passwordMatch($nif, $password) && (!haVotado($nif))) { //si la contraseña es correcta y no ha votado...
        $consulta = "SELECT LOGO, NOMBRE FROM partido";
        $resultado = $conexion->query($consulta);
        while ($rows = mysqli_fetch_assoc($resultado)) {
               $query=array_push($_SESSION['query'], $rows);
        }
        header('Location: Vista/votar2.php');
}

PHP视图(votar2.php):

<?php
include_once 'header.html';
session_start();
$query = $_SESSION['query'];
?>  
<html>
<head>
    <meta charset="UTF-8">
    <script type="text/javascript" src="javascript.js"></script>
    <title></title>
</head>
<body>
    <div id="caja">
        <form action="../controladorPartidos.php" name="formVotar2" id="formVotar2" method="post">
            <table>
                <?php foreach ($query as $partido) { ?>
                    <tr>
                        <td style="text-align: center"><img src="<?php echo $partido[0] ?>"/></td>
                        <td><input type="radio" name="partido" value="<?php echo $partido[1] ?>"><?php echo $partido[1] ?></td>

                    <?php }; ?>
                </tr>
            </table>
            <div style="width:75px; margin-right:auto; margin-left:auto;">
                <br/>
                <input id="botonVotar" type="submit" name="submit" onClick="submitVoto()" value="Votar"/>
                <br/>
            </div>
        </form>
    </div>
</body>
</html>

希望您能帮助我!预先感谢您的时间:)

0 个答案:

没有答案