回声一个HTML页面并将值输入PHP变量的形式

  • 本文关键字:PHP 变量 一个 HTML 回声 php html
  • 更新时间 :
  • 英文 :


我想阻止对PHP页面的访问。我以这种方式这样做:如果您登录,php检查是否存在cookie,然后进行回声HTML,否则它将您重定向到登录页面。

这是代码,但是当我尝试设置值等于PHP变量时,我会恢复PHP代码EX。"

选择标签中的php代码也不正常!

<?php 
if(isset($_COOKIE['User_Email_Cookie']))    {
    session_start();
    $name =$_SESSION['User_FullName'];
    $phone =$_SESSION['User_Phone'];
    echo '<!DOCTYPE html>
<html>
<body>     
<h1 class="Title">Reserve a table now!</h1>
<center>
<form action="reservation2.php" method="post">
    <div class="App">
        <div class="User">
            <h2 style="text-align:left;"> Contact:</h2>
            <input type="text" id="Name" placeholder="Full Name"  value="<?php echo $name ?>" required>
            <input type="tel" id="Phone" placeholder="Phone" value="<?php echo $phone ?>"  required>
        </div>
        <div class="DatePeople">
            <h2> Choose the Date:</h2>
            <input type="date" id="Date" name="TableDate">
            <select name="Time" class="time">
                <option>19:00</option>
                <option>19:30</option>
                <option>20:00</option>
                <option>20:30</option>
                <option>21:00 </option>
                <option>21:30</option>
                <option>22:00</option>
            </select>
            <h2 style="margin-top:0px;">Choose Table, People: <a  target="_blank" href="media/diagram.png"><img src="media/info.png" width="23px"></a></h2>
            <select name="TableNum" class="table">
                <?php
                include 'connectDb.php';  #Eisagwgi stoixeiwn gia syndesi me ti vasi
                $result=mysqli_query($con,"SELECT COLUMN_NAME FROM INFORMATION_SCHEMA.Columns WHERE 
                    TABLE_NAME = 'available' AND COLUMN_NAME NOT IN ('Date', 'Time')");
                while($row = mysqli_fetch_array($result)) {
                    echo '<option>'.$row[0].'</option>';
                }
                ?>    
            </select>
            <input type="number" id="seats" name="People" min="2" max="8" value="4" >
        </div>
    </div>
    <div>
        <input type="submit" name="Submit" value="Reserve"> 
        <a class="button" href="logout.php">Log out</a>
    </div>  </center>
</form>
else {
    header("location: reservation.php");
}

问题是您回荡了HTML,在该回声中,您将"内部" php标签(例如value="<?php echo $name ?>"而不是value="' . $name . '"(组合在一起(。

更改:

echo '<!DOCTYPE html>

to:

?><!DOCTYPE html>

,最后,您拥有的地方:

</form>

替换
</form></body></html><?php

上面的代码允许您通过在正确的位置关闭php标签来组合HTML标记,而无需使用PHP echo

阅读文档以获取更多详细信息。

请尝试此代码

 <?php 
if(isset($_COOKIE['User_Email_Cookie']))    {
    session_start();
    $name =$_SESSION['User_FullName'];
    $phone =$_SESSION['User_Phone'];
    ?>
    <!DOCTYPE html>
<html>
<body>     
<h1 class="Title">Reserve a table now!</h1>
<center>
<form action="reservation2.php" method="post">
    <div class="App">
        <div class="User">
            <h2 style="text-align:left;"> Contact:</h2>
            <input type="text" id="Name" placeholder="Full Name"  value="<?php echo $name ?>" required>
            <input type="tel" id="Phone" placeholder="Phone" value="<?php echo $phone ?>"  required>
        </div>
        <div class="DatePeople">
            <h2> Choose the Date:</h2>
            <input type="date" id="Date" name="TableDate">
            <select name="Time" class="time">
                <option>19:00</option>
                <option>19:30</option>
                <option>20:00</option>
                <option>20:30</option>
                <option>21:00 </option>
                <option>21:30</option>
                <option>22:00</option>
            </select>
            <h2 style="margin-top:0px;">Choose Table, People: <a  target="_blank" href="media/diagram.png"><img src="media/info.png" width="23px"></a></h2>
            <select name="TableNum" class="table">
                <?php
                include 'connectDb.php';  #Eisagwgi stoixeiwn gia syndesi me ti vasi
                $result=mysqli_query($con,"SELECT COLUMN_NAME FROM INFORMATION_SCHEMA.Columns WHERE 
                    TABLE_NAME = 'available' AND COLUMN_NAME NOT IN ('Date', 'Time')");
                while($row = mysqli_fetch_array($result)) {
                    echo '<option>'.$row[0].'</option>';
                }
                ?>    
            </select>
            <input type="number" id="seats" name="People" min="2" max="8" value="4" >
        </div>
    </div>
    <div>
        <input type="submit" name="Submit" value="Reserve"> 
        <a class="button" href="logout.php">Log out</a>
    </div>  </center>
</form>
<?php
else {
    header("location: reservation.php");
}
?>

最新更新