首页 > 解决方案 > echo post表单数据php

问题描述

我在 php 中有一个简单的 HTML 表单流程,当我提交表单时,日期成功保存在数据库中。我想在另一个页面中显示这些数据。我应该怎么办 ?

表格

<form method="post" action="preparedstatement.php">
    <div class="wrapper">
        <p>
            <label for=""> Nom :</label>
            <input type="text" name="nom" id="nom">
        </p>
        <p>
            <label for=""> Prénom :</label>
            <input type="text" name="prenom" id="prenom">
        </p>
        <p>
            <label for=""> Date :</label>
            <input type="date" name="id_date"  id="date" required>
        </p>
        <p>
            <label for=""> Nombre d'adultes :</label>
            <select name="nb_adulte" id="nb_adulte"> 
                <option value="1" <?php if($options=="1") echo 'selected="selected"'; ?> >1</option>
                <option value="2" <?php if($options=="1") echo 'selected="selected"'; ?> >2</option>
                <option value="3" <?php if($options=="1") echo 'selected="selected"'; ?> >3</option>
                <option value="4" <?php if($options=="1") echo 'selected="selected"'; ?> >4</option>
                <option value="5" <?php if($options=="1") echo 'selected="selected"'; ?> >5</option>
                <option value="6" <?php if($options=="1") echo 'selected="selected"'; ?> >6</option>
                <option value="7" <?php if($options=="1") echo 'selected="selected"'; ?> >7</option>
                <option value="8" <?php if($options=="1") echo 'selected="selected"'; ?> >8</option>
                <option value="9" <?php if($options=="1") echo 'selected="selected"'; ?> >9</option>
                <option value="10" <?php if($options=="1") echo 'selected="selected"'; ?> >10</option>
            </select>
        </p>
        <p>
            <label for=""> Nombre d'enfants :</label>
            <select name="nb_enfant" id="nb_enfant"> 
                <option value="1" <?php if($options=="1") echo 'selected="selected"'; ?> >1</option>
                <option value="2" <?php if($options=="1") echo 'selected="selected"'; ?> >2</option>
                <option value="3" <?php if($options=="1") echo 'selected="selected"'; ?> >3</option>
                <option value="4" <?php if($options=="1") echo 'selected="selected"'; ?> >4</option>
                <option value="5" <?php if($options=="1") echo 'selected="selected"'; ?> >5</option>
                <option value="6" <?php if($options=="1") echo 'selected="selected"'; ?> >6</option>
                <option value="7" <?php if($options=="1") echo 'selected="selected"'; ?> >7</option>
                <option value="8" <?php if($options=="1") echo 'selected="selected"'; ?> >8</option>
                <option value="9" <?php if($options=="1") echo 'selected="selected"'; ?> >9</option>
                <option value="10" <?php if($options=="1") echo 'selected="selected"'; ?> >10</option>
            </select>
        </p>
        <p>
            <label for=""> Heure :</label>
            <input type="time" id="" name="heure" value="">
        </p>
    </div>
    <div class="submitbutton">
        <button type="submit" class="btn btn-primary">Envoyer</button>
    </div>

</form>
    <! -- fin formulaire -->

治疗

<?php
$servername = "localhost";
$username = "root";
$password = "root";
$dbname = "pdodb";

// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);

// Check connection
if ($conn->connect_error) {
  die("Connection failed: " . $conn->connect_error);
}

// prepare and bind
$stmt = $conn->prepare("INSERT INTO reservation (nom, prenom, id_date, nb_adulte, nb_enfant, heure) VALUES (?, ?, ?, ?, ?, ?)");
$stmt->bind_param("ssssss", $_POST['nom'], $_POST['prenom'], $_POST['id_date'], $_POST['nb_adulte'], $_POST['nb_enfant'], $_POST['heure']);
$stmt->execute();


$newID = $conn->insert_id;
$stmt->close();
$conn->close();
header('Location: view.php?id='.$newID);
?>

观点(我没有把所有的)

 <?php


$mysqli = new mysqli("localhost", "root", "root", "pdodb");
if ($mysqli->connect_errno) {
    echo "Échec lors de la connexion à MySQL : (" . $mysqli->connect_errno . ") " . $mysqli->connect_error;
}

$id = $_GET["id"];
$sql = "SELECT * FROM reservation WHERE id=?";
$stmt = $conn->prepare($sql); 
$stmt->bind_param("i", $id);
?>


<br>
<br>
  <img src="Logo-QSN.png" alt="lOGO FEELING GUADELOUPE">
  <br>
  <br>
<div class="all">

<div class="titre">
<h1>RÉCAPITULATIF DE LA RÉSERVATION</h1>
</div>
<br>
<br>

<p>Agence Feeling Guadeloupe </p>

<div class="nom"> <!-- nom et prenom -->
<span style="color:black;">    <strong>Nom et prénom</strong> :<?php echo $row['nom'], $row['prenom'] ; ?> <br /> </span>
 </div>


 <div class="liste"> <!-- activité -->
    <p>
    <span style="color:black;">    <strong>Activité</strong> :  <?php echo $row['load_desc']; ?><br /> </span>
    </div>

    
    <div class="operateur"> <!-- operateur -->
    <span style="color:white;">    <strong>Operateur</strong> :<br /> </span>

    </div>

    <br>
       
<br>
<div class="date"> <!-- date -->
<span style="color:white;">  <strong>Date</strong>  <?php echo $row['id_date']; ?>      <br> </span>
        </div>    

        <div class="heure"> <!-- heure -->
        <span style="color:black;">  <strong>Heure</strong>  <?php echo $row['heure']; ?>      <br> </span>
        </div>

        <div class="lieu"> <!-- lieu -->
        <span style="color:black;">  <strong>Lieu</strong>      <br> </span>
        </div>

        <div class="tel"> <!-- tel -->
        <span style="color:black;">  <strong>Téléphone</strong>      <br> </span>
        </div>


        <div class="description"> <!-- description -->
        <span style="color:white;">  <strong>Description</strong>       <br> </span>
        </div>

        
        <div class="styleactivity">
       
        
    </div>
        <div class="nbea"> <!-- nombre adulte -->
        <span style="color:black;">  <strong>Nombre d'adultes</strong>  <?php echo $row['nb_adulte']; ?>     <br> </span>
        </div>

        <div class="nbee"> <!-- nombre enfant  -->
        <span style="color:black;">  <strong>Nombre d'enfants</strong>   <?php echo $row['nb_enfant']; ?>     <br> </span>
        </div>

        <div class="info"> <!-- info sup -->
        <span style="color:black;">  <strong>Informations supplémentaires</strong>      <br> </span>
        </div>

    
   </p>
</div>
  </body>
</html>

那么哪一个是正确的? echo $row['nom']; echo $_POST['nom'];

他们都没有向我返回表单传输的数据

编辑:我现在使用这段代码,并且在我的 view.php 中有一个空白页

标签: phphtmlmysql

解决方案


您需要在重定向时将新生成的 ID 传递给视图,然后通过 $_GET 检索它。

所以

  1. 从数据库中获取最后插入的 ID,

  2. 修改header('Location: view.php');为包含具有该 ID 的 URL 参数

  3. 修改视图脚本以从中读取它$_GET并将其作为 SQL 参数包含在您的 SELECT 查询中。

例如

$newID = $conn->insert_id; //get last inserted ID
$stmt->close();
$conn->close();
header('Location: view.php?id='.$newID); //put ID in the redirect URL

$id = $_GET["id"]; //get ID passed in from URL
$sql = "SELECT * FROM reservation WHERE id=?";
$stmt = $conn->prepare($sql); 
$stmt->bind_param("i", $id);

也可以看看:


推荐阅读