用户登录时使用PHP MYSQL,是否将密码作为变量插入到其他数据库?

时间:2019-05-17 16:44:17

标签: php mysql parameters passwords

我希望有权访问我的网站的用户能够在新网站上使用其登录凭据,而无需执行任何操作(例如再次注册),所以我要做的就是每当他们登录到我的旧网站时网站,这是登录表单:

<?php

require_once(PROJECTS_PATH . '/path/to/Form.php');
class UserLogin extends Form {

var $focusFirst = 'email';

function __construct() {
    parent::__construct();
    $this->input('email')->required("Please enter your email (or 
login).")->label("Email (or login)")->width(40);
    $this->password('password')->required("Please enter your password.");
    $this->link('cancel', '/user/redirect', array("style" => "padding- 
right: 50px;"))->label('Cancel');
    $this->submit('login'); #, array('value' => 'Login'));
    require ('/path/to/scripts/updateUsers.php'); //This includes the script that creates a new user for my new site
}
}
?>

我尝试了一堆不同的方法,但似乎没有效果。 起作用的是,我能够从用户那里获取所有需要的信息,以便在我的数据库中为新站点创建一个新用户,但是我无法获得密码,我想将其原始获取到我的updateUsers脚本中,脚本我正在对其进行哈希处理。

注意:我不能仅仅将数据库用户表移到新站点表中,因为其中涉及不同的哈希。

我的updateUsers脚本:

<?php
$firstname = $user['first_name'];
$mail  = $user['email'];
$pw = 'TestPasswor'; //I'm doing this right not which works but I need the actual user's pw otherwise this is useless

include("/path/to/password.inc"); //for hashing the pw 
include("/path/to/bootstrap.inc");
$hashed_password = user_hash_password(trim($pw));

$query = sprintf("INSERT INTO test_db.users (name, pass, mail, status)
VALUES ('$firstname', '$hashed_password', '$mail', '1')",
mysql_real_escape_string($firstname),
mysql_real_escape_string($hashed_password),
mysql_real_escape_string($mail));

// Perform Query
$result = mysql_query($query);
?>

对不起,我知道这是一个冗长的描述,但谢谢!

0 个答案:

没有答案