создать учетную запись с другой учетной записью в приложении Android

Мое приложение теперь имеет 2 входа, пользователь может войти с учетной записью приложения или Facebook, теперь я хотел бы спросить, когда я войду с Facebook, имя пользователя, адрес электронной почты и пароль учетной записи Facebook могут храниться в одной таблице с моей учетной записью приложения? Я использую localhost и php для базы данных, и я использую android studio для разработки приложения, потому что теперь моя задача состоит в том, чтобы, если пользователь входит в мой аккаунт через Facebook, когда он хочет создать новую учетную запись, он не может использовать тот же адрес электронной почты, что и Facebook, который он использует для входа в систему. прямо сейчас. Надеюсь, кто-то понимает мой вопрос. Ниже мой логин и регистрация кода учетной записи приложения:

Авторизоваться:

<?php

require_once '../includes/DbOperations.php';

$response = array();

if($_SERVER['REQUEST_METHOD']=='POST'){
if(isset($_POST['username']) and isset($_POST['password'])){
$db = new DbOperations();

if($db->userLogin($_POST['username'], $_POST['password'])){
$user = $db->getUserByUsername($_POST['username']);
$response['error'] = false;
$response['user_id'] = $user['user_id'];
$response['email'] = $user['email'];
$response['username'] = $user['username'];}else{
$response['error'] = true;
$response['message'] = "Invalid username or password";
}

}else{
$response['error'] = true;
$response['message'] = "Required fields are missing";
}
}

echo json_encode($response);
?>

регистр:

<?php

require_once '../includes/DbOperations.php';

$response = array();

if($_SERVER['REQUEST_METHOD']=='POST'){
if(
isset($_POST['username']) and
isset($_POST['email']) and
isset($_POST['password']))
{
//operate the data further

$db = new DbOperations();

$result = $db->createUser(   $_POST['username'],
$_POST['password'],
$_POST['email']
);
if($result == 1){
$response['error'] = false;
$response['message'] = "User registered successfully";
}elseif($result == 2){
$response['error'] = true;
$response['message'] = "Some error occurred please try again";
}elseif($result == 0){
$response['error'] = true;
$response['message'] = "It seems you are already registered, please choose a different email and username";
}
}else{
$response['error'] = true;
$response['message'] = "Required fields are missing";
}
}else{
$response['error'] = true;
$response['message'] = "Invalid Request";
}

echo json_encode($response);

2

Решение

В такой ситуации я делаю хранение электронной почты вместе с пользовательскими данными в базе данных. Наряду с этим, я также храню имя пользователя (чтобы избежать дублирования в имени пользователя). Поэтому, если пользователь создает новую учетную запись, эта отдельная таблица / коллекция проверяется, если такой идентификатор электронной почты существует. Если он существует, просто показать сообщение для сброса пароля.

0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector