Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/86.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php $\会话:未定义的索引_Php_Html_Session - Fatal编程技术网

Php $\会话:未定义的索引

Php $\会话:未定义的索引,php,html,session,Php,Html,Session,我正在创建一个会议室预订网站。 我已经完成了sql查询,根据选择的时间和日期搜索免费房间。 这是有效的。我使用查询中的数据以卡片的形式显示空闲房间(在while循环中) <?php if (isset($_POST['submit'])) { echo '<main role="main"> <div class="card-columns">'; require_once 'connexion_BD.php';

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

<?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; 
  }
} 
?>   
但这不起作用,因为在confirm_resa.php中,
$\u会话['sal_choix']
是:未定义索引

这不是会话问题,因为设置了另外两个:
$\u会话['res\u date']
$\u会话['res\u horaire']

我很确定问题出在
if(isset($\u POST[])
中,但我看不到它。。。
请帮忙

在查找任何会话变量之前,是否应该调用session_start()
button
元素允许指定与实际按钮内容不同的提交值。不要使用具有x个不同名称的x个按钮,使用具有一个通用名称的x个按钮,以及x个不同的值。我在顶部包含了一个标题_member.php,其中包含一个会话_start(),所以我不认为,它不仅仅适用于$_session['sal_choix']这样的会话?
if (isset($_POST['reserver_Daum'])) $_SESSION['sal_choix'] = "Daum";
elseif (isset($_POST['reserver_Galle'])) $_SESSION['sal_choix'] = "Galle";
etc...