在另一个页面上获取电子邮件 ID

Posted

技术标签:

【中文标题】在另一个页面上获取电子邮件 ID【英文标题】:Get email id on another page 【发布时间】:2016-04-06 12:51:06 【问题描述】:

在注册页面提交后,我的注册页面重定向到 info.php,我想使用他在注册页面上提供的电子邮件 ID 收集用户的其他信息,但是当我尝试通过会话获取用户的电子邮件 ID 时,会话返回空价值。

这是我的注册码

<?php
    session_start();
    if(isset($_POST['submit']))
        $name= $_POST['_user'];
        $email = $_POST['_email'];
        $pass = $_POST['_password'];

        //Insert Data

        $sql = "INSERT INTO signup(name,email,password)
                VALUES('$name','$email','$pass')"; 

        //Data Validation

        if(mysqli_query($conn,$sql))
            echo "<script>alert('SignUp Successfull')</script>";
            $_SESSION['user_email'] = $email;
            header('Location: info.php');

        
        else 
            echo "<script>window.alert('You are already a user.')</script>";
        

    
    mysqli_close($conn);
    ?>

这是我的 INFO.PHP 代码

 <?php
       session_start();
       if(isset($_POST['_submit']))
           if(empty($_POST['_address']) || empty($_POST['_country']) || empty($_POST['_number']) || empty($_POST['_cnic']) || empty($_POST['_passport']))
               echo "<script>window.alert('All fields are required')</script>";
           
           else
               $address = $_POST['_address'];
               $country = $_POST['_country'];
               $number = $_POST['_number'];
               $cnic = $_POST['_cnic'];
               $passport = $_POST['_passport'];
               $email=$_SESSION['user_email'];


               $query = "INSERT INTO info(email,address,country,mobile,cnic,passport)
                         VALUES('$email','$address','$country','$number','$cnic','$passport')";

               if(mysqli_query($conn,$query))
                   header('Location: ../index.php');
               
               else 
                   echo "<script>window.alert('Error While Entering the data!.')</script>";
               
           
       
       mysqli_close($conn);
   ?>

此外,我将这个全局会话变量用于登录页面,它工作正常。

更新 注册 HTML 代码

<div class="outside">
    <form class="form-horizontal" role="form" method="post">
        <div class="form-group">
            <label class="control-label col-sm-3 glyphicon glyphicon-user" for="name"></label>
            <div class="control-label col-sm-8">
                <input type="text" name="_user" class="form-control" id="name" placeholder="Full Name">
            </div>
        </div>

        <div class="form-group">
            <label class="control-label col-sm-3" for="email">
                <img class="glyphicon1" src="../assests/at-sign.png">
            </label>
            <div class="control-label col-sm-8">
                <input type="email" name="_email" class="form-control" id="email" placeholder="Enter Email">
            </div>
        </div>
        <div class="form-group">
            <label class="control-label col-sm-3 glyphicon glyphicon-lock" for="password"></label>
            <div class="control-label col-sm-8">
                <input type="password" name="_password" class="form-control" id="password" placeholder="Enter Password">
            </div>
        </div>
        <div class="form-group"> 
            <div class="col-sm-offset-3 col-sm-3">
                <button name="submit" id="submit" value="Upload" type="submit" class="btn btn-default">Confirm SignUp</button>
            </div>
        </div>
        <p>Already a User? <a href="../login/index.php">LogIn</a></p>
    </form>
</div>

【问题讨论】:

我看不到您的数据库连接或您包含任何数据库连接文件 实际上我在工作文件中建立了一个数据库连接,它工作正常 检查电子邮件是否已保存或不在表格中,可能为空。 电子邮件栏为空 也发布您的表单代码!! 【参考方案1】:

将此用于返回上次查询中使用的自动生成的 id

mysqli_insert_id($link)

【讨论】:

以上是关于在另一个页面上获取电子邮件 ID的主要内容,如果未能解决你的问题,请参考以下文章

PHP 中的 Joomla 独立脚本 - 握手

Flutter 在另一个页面上获取用户 ID 并将其转换为字符串(“类型'Future<dynamic>'不是类型'String'的子类型”)

SQL:根据表中的ID删除表中的项,该ID也出现在另一个表中

Woocommerce:结帐页面后获取订单ID [重复]

在特定选项卡中打开链接 - 来自电子邮件

如何在 Wikidata 上创建一个 SPARQL 查询,以获取所有具有 Project Gutenberg 电子书 ID 的书籍?