php - echo html 页面并从 php 变量将值输入到表单中

标签 php html

我想阻止对 PHP 页面的访问。 我这样做是这样的:如果你已经登录,PHP 检查是否存在 cookie,并回显 HTML,否则它会将你重定向到登录页面。

这是代码,但是当我尝试将 value 属性设置为等于 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>

致:

?><!DOCTYPE html>

最后,你有:

</form>

替换为

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

上面的代码允许您通过关闭 php 来组合 html 标记。将标签放在正确的位置,而无需 echo用 php 来实现。

阅读documentation更多细节。

关于php - echo html 页面并从 php 变量将值输入到表单中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44344500/

相关文章:

php - Laravel 存储库模式契约

jquery - 较大的脚本文件失败但较小的似乎没问题

phploc 安装不适用于 ubuntu

javascript - 如何在选项卡标题部分创建带有图像的可切换选项卡?

javascript - IF/ELSE 破坏了 javascript 和 JSON 交互的逻辑

html - 更改 radio 颜色 Material 设计

html - 语义正确的嵌套 anchor

php - 提取英国邮政编码首字母的正则表达式

php - 无法连接到 MySQL/其他错误。使用PHP

php - 使用 Zend Framework 的热门开源项目