使用php将Session Email插入MySQL表


Inserting Session Email into MySQL table using php

MySQL表'users'结构:

 id  |  user_name | user_pass  | user_email |
 1   |  anderson  |  password  |boy@mail.com|

MySQL表'history'结构:


 id  |  user_email  |
 1   | boy@mail.com |  <<< trying to insert boy@mail.com under user_email

试图在user_email

下的'history'表中插入boy@mail

嗨,我在MySQL数据库中做了两个表。第一个是用户,第二个是历史。我有一个登录和注册PHP代码,允许用户使用'users'表注册和登录。当我登录时,页面将我重定向到一个欢迎页面,其中使用$_SESSION显示我的user_email,如下所示。

现在我想做以下事情;如果用户已经登录,将$_SESSION['email']插入到user_email下的'history'表中。

我得到了这段代码,我知道它真的错了。但是我是php的新手。所以有人可以帮助我修复它,并从第一个表插入会话数据到第二个表,只有当用户登录。非常感谢!

======================================================================MY-CODE:试图将会话值插入"历史"表

<head>
                          <?php 
                                     session_start();   
                                    $_SESSION['email'];         
                                   $query = "insert into history (email) values ('$email')";
                             ?>     

</head>     

由于OP提供了非常模糊的细节,我建议以下解决方案,这是非常容易实现的,非常少的麻烦

正如OP在问题中提到的"我有一个登录和注册PHP代码,允许用户使用'users'表注册和登录。当我登录时,页面将我重定向到欢迎页面"

在您的登录页面上,您可以检查用户名和密码,在验证之后,您将用户重定向到欢迎页面,在重定向之前和验证之后运行此插入查询
$query = "INSERT INTO history (user_email) VALUES ('$email')";
$result = mysql_query($query);

在同一页。不要忘记定义$email变量First
不需要$_SESSION['email'];
无需编写新的查询
无需额外编码


更新;OP提供了注释

中的代码
if(isset($_POST['login'])){
        $password = mysql_real_escape_string($_POST['pass']);
        $email = mysql_real_escape_string($_POST['email']);
        $check_user = "SELECT * FROM users WHERE user_pass='$password' AND user_email='$email'";
        $run = mysql_query($check_user);
        $row= mysql_fetch_array($check_user);
        $email = $row['user_email'];
        if(mysql_num_rows($run)>0){
            $_SESSION['email']=$email; //If you don't need this, remove this
            $query = "INSERT INTO history (user_email) values ('$email')";
            $result = mysql_query($query);
        echo "<script>window.open('welcome.php','_self')</script>";
    } else {
        echo "<script>alert('Email or password x ')</script>";
    }
}