PHP MYSQL, когда пользователь входит в систему, вставить пароль в качестве переменной в другую базу данных? - PullRequest
0 голосов
/ 17 мая 2019

Я хочу, чтобы пользователи, имеющие доступ к моему веб-сайту, могли использовать свои учетные данные для входа на мой новый веб-сайт без необходимости делать что-либо, например, повторную регистрацию, поэтому я делаю так, чтобы каждый раз, когда они входили в мой старый сайт это форма авторизации:

<?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);
?>

Извините, я знаю, что это длинное описание, но спасибо!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...