Привет, друзья!
Я столкнулся с проблемой при работе с PHP кодом регистрации на сервере и надеюсь на вашу помощь. Мне нужно отправить запрос в базу данных для создания новой записи, но что-то идет не так.
Я попытался использовать запрос, который обычно используется для создания административной записи, но у меня это не получилось. Не могли бы вы подсказать, какие таблицы обычно используются для хранения информации о пользователях? Может быть, я выбираю не ту таблицу или делаю что-то не так с запросом c шифрованием тоже беда.
Буду благодарен за любую помощь или указание в правильном направлении. Если у вас есть какие-то идеи или опыт в этой области, пожалуйста, поделитесь им.
Спасибо большое!
Я столкнулся с проблемой при работе с PHP кодом регистрации на сервере и надеюсь на вашу помощь. Мне нужно отправить запрос в базу данных для создания новой записи, но что-то идет не так.
Я попытался использовать запрос, который обычно используется для создания административной записи, но у меня это не получилось. Не могли бы вы подсказать, какие таблицы обычно используются для хранения информации о пользователях? Может быть, я выбираю не ту таблицу или делаю что-то не так с запросом c шифрованием тоже беда.
Буду благодарен за любую помощь или указание в правильном направлении. Если у вас есть какие-то идеи или опыт в этой области, пожалуйста, поделитесь им.
Спасибо большое!
Код:
<?php
session_start();
$serverName = "name";
$connectionOptions = array(
"UID" => "sa",
"PWD" => "pass"
);
$conn_lin2db = sqlsrv_connect($serverName, $connectionOptions + ["Database" => "lin2db"]);
if ($conn_lin2db === false) {
die(print_r(sqlsrv_errors(), true));
}
if ($_SERVER["REQUEST_METHOD"] == "POST") {
$err = array();
if (empty($err)) {
$finaly = array(
'login' => $_POST['login'],
'password' => $_POST['pwd'],
'question' => "question",
'answer' => "0x0",
'ssn' => generateSSN(),
'mail' => $_POST['mail']
);
$encryptedPassword = "0x" . strtoupper(hash('sha256', $_POST['pwd']));
$queryUserAuth_lin2db = "INSERT INTO lin2db.dbo.user_auth VALUES('".$finaly['login']."', '".$encryptedPassword."', '".$finaly['question']."', '', ".$finaly['answer'].", 0x0, '0', NULL)";
$queryUserAccount_lin2db = "INSERT INTO lin2db.dbo.user_account(account, pay_stat) VALUES('".$finaly['login']."', 1)";
$querySSN_lin2db = "INSERT INTO lin2db.dbo.ssn(ssn, name, email, job, phone, zip, addr_main, addr_etc)
VALUES('".$finaly['ssn']."', '".$finaly['login']."' COLLATE Cyrillic_General_CI_AS, '".$finaly['mail']."' COLLATE Cyrillic_General_CI_AS, 0, 'phone', 'zip', 'addr1', 'addr2')";
$result1_lin2db = sqlsrv_query($conn_lin2db, $queryUserAuth_lin2db);
$result2_lin2db = sqlsrv_query($conn_lin2db, $queryUserAccount_lin2db);
$result3_lin2db = sqlsrv_query($conn_lin2db, $querySSN_lin2db);
if (
$result1_lin2db === false ||
$result2_lin2db === false ||
$result3_lin2db === false
) {
die(print_r(sqlsrv_errors(), true));
}
header("Location: registration_success.php");
exit();
} else {
print_r($err);
}
} else {
header("Location: registration_form.php");
exit();
}
function generateSSN() {
$ssn1 = mt_rand(1000000, 9999999);
$ssn2 = mt_rand(100000, 999999);
return $ssn1 . $ssn2;
}
?>