PHP - 回显变量问题


PHP - Echo variable issue

我有一个表,里面存储了用户电子邮件地址和密码。 我想在用户首次登录其帐户时在页面加载时显示用户的电子邮件。但它不起作用。数据不会显示在文本字段中。我相信我的代码应该在理论上工作。

.HTML

<section class="container">
        <form id="myform " class="Form" method="post" action="Cus_Account.php" accept-charset="utf-8">
            <!--                    <div id="first">-->
            <input type="text" id="fname" name="fname" value="" required> 
            <input type="text" id="lname" name="lname" value="" required>
            <input type="text" id="email" name="email" value="<?php echo $email; ?>" required>
            <input type="number" id="phone" name="phone" value="" required>
            <input type="submit" name="Update" value="Update">
            <br>
        </form>

.PHP

   <?php
        $user = $_SESSION['Cus_Email'];
        $get_user = "SELECT Cus_Email FROM Cus_Register WHERE Cus_Email='$user'";
        $run_user = mysqli_query($dbc, $get_user);
        //check if customer is on databse
        $row_customer = mysqli_fetch_array($run_user);

        $email = $row_customer['Cus_Email'];
        ?>

告诉您我在页面上运行了另一个查询可能会有所帮助

.PHP

      <?php
        if (isset($_POST['Update'])) {
            echo $c_fname = $_POST['fname'];
            echo $c_lname = $_POST['lname'];
            echo $c_phone = $_POST['phone'];

            $insert_det = "INSERT INTO Cus_acc_details(CUS_Fname,CUS_Lname, CUS_Phone) VALUES (?,?,?)";
            $stmt = mysqli_prepare($dbc, $insert_det);
            mysqli_stmt_bind_param($stmt, 'ssi', $c_fname, $c_lname, $c_phone);
            /* execute query */
            $r = mysqli_stmt_execute($stmt);
            if ($insert_det) {
                echo " Saved";
            }
        } else {
            echo "<b> Error </b>";
        }
        ?>

此查询将尚未在注册页上收集的数据插入到数据库中。

错误:

未定义的索引:Cus_Email in/Applications/MAMP/htdocs/PhpProject2/customer/Cus_Account.php 第 60 行

您可以使用var_dump来控制台记录数据以Cus_Email

如果找不到,可以检查你的sql是否正确。

<?php
    $user = $_SESSION['Cus_Email'];
    $get_user = "SELECT Cus_Email FROM Cus_Register WHERE Cus_Email='$user'";
    $run_user = mysqli_query($dbc, $get_user);
    //check if customer is on databse
    $row_customer = mysqli_fetch_array($run_user);
    // to test
    var_dump($row_customer);
    $email = $row_customer['Cus_Email'];
?>