У меня есть сайт, который содержит, среди прочего, две страницы: страницу бронирования событий и страницу входа в систему.Объединение двух функций ajax?
Моя цель: Я хочу объявить две функции Ajax, loginUser() и bookEvent(), которые я могу использовать на любой странице, также в сочетании. Когда пользователь нажимает «login» на странице входа в систему, должна выполняться только функция loginUser(), когда пользователь нажимает «книжное событие» на странице бронирования событий, сначала следует проверить, зарегистрирован ли пользователь, затем если он не вошел в систему, у него будет возможность войти в систему (вызывая функцию loginUser), и как только он войдет в систему, он автоматически забронирует событие (вызывая функцию bookEvent).
Мой вопрос: Как объединить обе функции в последнем случае? И как достичь этого, если пользователь уже зарегистрировался, на странице бронирования событий активируется функция bookingEvent(), когда пользователь нажимает на «книжное событие»? Я не прошу php-код, я уже знаю, как использовать обе функции отдельно друг от друга и как подключиться к базе данных!
Вот что я придумал до сих пор:
Мои две общие настраиваемые функции:
// LOGIN USER FUNCTION
function loginUser(login_query, param_response_dberror,
param_response_failed, param_response_success) {
$.ajax({
type : "POST",
url : "system/process-login.php",
data : login_query,
cache : false,
success : function(ajaxresponse) {
if (ajaxresponse === 'db_error') {
param_response_dberror();
}
if (ajaxresponse === 'failed') {
param_response_failed();
}
if (ajaxresponse === 'success') {
param_response_success();
}
}
});
} // /function loginUser();
// BOOK EVENT FUNCTION
function bookEvent (booking_query, param_response_dberror,
param_response_failed, param_response_success) {
$.ajax({
type : "POST",
url : "system/process-booking.php",
data : booking_query,
cache : false,
success : function(ajaxresponse) {
if (ajaxresponse === 'db_error') {
param_response_dberror();
}
if (ajaxresponse === 'failed') {
param_response_failed();
}
if (ajaxresponse === 'success') {
param_response_success();
}
}
});
} // /function bookEvent();
Моя страница фронтенд:
<h1>Some event</h1>
<p>Some event description</p>
<a href="#">book event</a>
<div id="loginbox" style="display:none">
<input type="text" id="username" placeholder="username">
<input type="password" id="password" placeholder="password">
<a href="#" id="login_and_book">login and book</a>
</div>
Во-первых, он должен быть проверен, если пользователь вошел в систему.
- Если он не вошедшего в: Сделать окно Логин видимым и когда пользователь нажимает «логин и книга» он получает войти в систему и книги события. Как я могу объединить оба, когда пользователь нажимает кнопку?
- Если он уже зарегистрирован: Зарезервируйте событие.
Как узнать, если они вошли в систему со стороны браузера? – jfriend00
На данный момент у меня есть следующий фрагмент php в шаблоне моей страницы: if (isset ($ _ SESSION ['username'])) {$ username = $ _SESSION ['username']; } –
Это что-то делает на самой странице браузера? Или это просто PHP работает на вашем сервере? Это не имеет большого значения для последовательности двух вызовов ajax, но ваша первая проблема заключается в том, как javascript на стороне клиента знает, что вы вошли в систему или нет, поэтому он может решить, нужно ли ему запускать процесс входа в систему? – jfriend00