Есть дефолтная авторизация dle и там проверка логина и пароля происходит на сервере в php файле. Меня это не устраивает, и я хотел сделать проверку на самом сайте через ajax.
Открыл dle.api и нашел регистрацию и авторизацию. Регистрацию сделал и она отлично работает, а с авторизацией не всё так просто. Авторизация в dle.api, как вы уже сказали, не есть авторизация, а просто проверка логина и пароля на существование.
Что ты подразумеваешь под словом скрипт? Показать ajax? Да он самый примитивный. Или ты про версию dle спрашиваешь? 11 версия
На выходе должна быть такая ситуация: Если логин-пароль верный - страница обновляется, я стал юзером; Если логин-пароль неверный - мне говорят, что пароль неверный и страница не обновляется.
Вы спросите, а чтож ты не прикрутишь к дефолтной авторизации эту проверку? Как
мля? - отвечу я. Я уже второй день сижу и понятия не имею, как это сделать. У меня либо логин и пароль проверяется, либо авторизация происходит. А чтоб вместе это работало - у меня не получается.
Короче говоря, решил я проблему, но колхозным способом. возможно такой способ вы еще не видели... Есть две формы. Первая форма - проверка логина и пароля, вторая форма - дефолтная авторизация dle. Если логин-пароль верный, то данные инпута из формы-проверки передаются в форму-дефолтную и имитируется нажатие на submit...
HTML:
<form method="POST" id="ajaxlogin" >
<div class="auth-tittle">Вход</div>
<fieldset class="authfield">
<legend>Логин</legend>
<input type="text" name="laname" id="laname">
</fieldset>
<fieldset class="authfield">
<legend>Пароль</legend>
<input type="password" name="lapass" id="lapass" >
</fieldset>
<span class="a-info"></span>
<input type="submit" value="Войти" class="auth-btn logindle" >
</form>
<form method="POST" class="hideform">
<input type="text" name="login_name" id="login_name">
<input type="password" name="login_password" id="login_password" >
<input type="submit" id="dlelogin">
<input name="login" type="hidden" id="login" value="submit">
</form>
Код:
$('#ajaxlogin').on( "submit", function(e) {
e.preventDefault();
$.ajax({
type: "POST",
url: "ajaxlogin.php",
data: $('#ajaxlogin').serialize(),
success: function(msg){
if(msg=='yes'){
$("#login_name").val($("#laname").val());
$("#login_password").val($("#lapass").val());
$('#dlelogin').trigger('click');
}
if(msg=='no'){
$('.a-info').text('Неправильный логин или пароль')
}
}
});
});