Вход в Google не перенаправляетPhp

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Вход в Google не перенаправляет

Сообщение Anonymous »

У меня возникли проблемы с входом в Google с использованием аутентификации Firebase. Что я хочу сделать, так это то, что если адрес электронной почты пользователя уже существует в базе данных, он перенаправит пользователя на соответствующую страницу, а затем, если нет, пользователь будет перенаправлен на форму регистрации с предварительно заполненной информацией о пользователе Google из Google. форма (она работает). Единственная проблема заключается в том, что если я попытаюсь войти в систему, используя адрес электронной почты, который уже есть в базе данных, меня не перенаправит на домашнюю страницу.

Код: Выделить всё

e.preventDefault(); // Prevent default form submission behavior

signInWithPopup(auth, provider)

.then((result) => {

const user = result.user;

const xhr = new XMLHttpRequest();

xhr.open("GET", `check.php?email=${encodeURIComponent(user.email)}`, true);

xhr.onreadystatechange = function() {

if (xhr.readyState == 4) {

if (xhr.status == 200) {

try {

const response = JSON.parse(xhr.responseText);

console.log('Response:', response); // Log the response for debugging

if (response.exists) {

switch (response.role) {

case 'job_seeker':

window.location.href = 'job_seeker_home.php';

break;

case 'employer':

window.location.href = 'employer_home.php';

break;

default:

console.error('Unknown role:', response.role);

// Handle unknown roles here

}

} else {

window.location.href = `login.php?form_type=signup&name=${encodeURIComponent(user.displayName)}&email=${encodeURIComponent(user.email)}`;

}

} catch (error) {

console.error('Error parsing response:', error);

}

} else {

console.error('Request failed with status:', xhr.status);

}

}

};

xhr.onerror = function() {

console.error('Request failed');

};

xhr.send();

})

.catch((error) => {

console.error('Error during sign-in:', error);

});
});

Подробнее здесь: https://stackoverflow.com/questions/786 ... t-redirect
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»