$ _SESSION:未定义的索引

时间:2018-06-11 09:36:46

标签: php html session

我正在为会议室创建预订网站。 我已经完成了sql查询,根据所选的时间和日期搜索免费房间。 这很有效。我使用查询中的数据显示卡中的空闲房间(在一个循环中)。

<?php           
if (isset($_POST['submit'])) {
    echo '<main role="main">
    <div class="card-columns">';
    require_once 'connexion_BD.php';

  $res_date = $_POST['res_date'];
  $res_date = date("Y-m-d", strtotime($res_date));
  $res_horaire_id = $_POST['res_horaire'];
  $_SESSION['res_date'] = $_POST['res_date'];
  $_SESSION['res_horaire'] = $_POST['res_horaire'];

  $sql = "SELECT sal_nom, sal_nb_place, sal_notes
            FROM salle
            WHERE sal_id NOT IN (SELECT res_sal_id FROM reservation WHERE res_date = :res_date AND res_horaire_id = :res_horaire_id)";
  $requete = $db->prepare($sql);

  $requete->bindValue(':res_date', $res_date);
  $requete->bindValue(':res_horaire_id', $res_horaire_id);
  $requete->execute();
  $i=0;
  while ($row = $requete->fetch()) {
    $tab_sal_nom[0+$i] = $row['sal_nom'];
    $tab_sal_nb_place[0+$i] = $row['sal_nb_place'];
    $tab_sal_notes[0+$i] = $row['sal_notes'];
    ?>
    <div class="card bg-light">
        <img class="card-img-top" <?php echo 'src="img/salle_reunion_'. rand(1, 8) .'.jpg"' ?> alt="Salle de réunion">
        <div class="card-body">
            <h5 class="card-title">Salle <?php echo $tab_sal_nom[0+$i]; ?></h5>
            <p class="card-text">Salle disposant de <?php echo $tab_sal_nb_place[0+$i]; ?> places.</p>
            <p class="card-text"><small class="text-muted">Informations de salle : <?php echo $tab_sal_notes[0+$i]; ?></small></p>
            <form action="confirm_resa.php" method="POST">
          <button class="btn btn-outline-primary float-right" style="margin-bottom: 15px;" name=<?php echo '"reserver_'.$tab_sal_nom[0+$i].'"'?> type="submit">Réserver</button>
        </form>
        </div>
    </div>
<?php 
  $i = $i + 1; 
  }
} 
?>   

现在我的问题在于,我想知道用户选择在$_SESSION['sal_choix']中存储信息的房间名称,因此,我查看名为<?php echo '"reserver_'.$tab_sal_nom[0+$i].'"'?>的提交按钮(等于到reserver_Daum,reserver_Majorelle,reserver_Galle,reserver_Corbin等......)

我的想法是看一些if:

if (isset($_POST['reserver_Daum'])) $_SESSION['sal_choix'] = "Daum";
elseif (isset($_POST['reserver_Galle'])) $_SESSION['sal_choix'] = "Galle";
etc...

但那不起作用,因为在confirm_resa.php中,$_SESSION['sal_choix']是:未定义的索引

这不是会话问题,因为另外两个:$_SESSION['res_date']$_SESSION['res_horaire']是设置。

我很确定问题出在if(isset($_POST[])),但我无法看到...... 请帮忙!

0 个答案:

没有答案