• Страница 1 из 1
  • 1
Немного поправить скрипт входа для сайта
leontevm451
Среда, 22 Апреля 2020, 10:42 | Сообщение 1
Оффлайн
Пользователи
Сообщений:5
Награды: 0
Здравствуйте, нужно подправить скрипт входа в ajax

Код
function getXmlHttp() {
   var xmlhttp;
   try {
      xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
   } catch (e) {
   try {
      xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
   } catch (E) {
      xmlhttp = false;
   }
   }
   if (!xmlhttp && typeof XMLHttpRequest!='undefined') {
      xmlhttp = new XMLHttpRequest();
   }
   return xmlhttp;
}
function loginsub() {
   var user = document.getElementById('usrnm').value; // Считываем значение usrnm
   var password = document.getElementById('pswd').value; // Считываем значение pswd

   var xmlhttp = getXmlHttp(); // Создаём объект XMLHTTP
   xmlhttp.open('POST', '/index/sub/', true); // Открываем асинхронное соединение
   xmlhttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded'); // Отправляем кодировку
   xmlhttp.send('user=' + encodeURIComponent(user) + '&password=' + encodeURIComponent(password) + '&a=2&ajax=1&rnd=0'); // Отправляем POST-запрос

   xmlhttp.onreadystatechange = function() { // Ждём ответа от сервера
      if (xmlhttp.readyState == 4) { // Ответ пришёл
         if(xmlhttp.status == 200) { // Сервер вернул код 200 (что хорошо)
            var result = xmlhttp.responseText; // Ответ сервера
            if(result.indexOf('myWinLoadSD')!=-1){
               window.location.reload();
            }else if(result.indexOf('Your IP')!=-1){
               alert('Your IP address has been temporarily blocked');
            }else if(result.indexOf('Wrong')!=-1){
               alert('Wrong username or password');
            }else{
               alert(result);
            }
         }else{
            alert('Connection Issue');
         }
      }else{
         alert('Unknown error');
      }
   };
   return false;
}


Код
<form onsubmit="loginsub();return false;" method="post" action="/index/sub/">
<div class="login-form">
<div class="login-input"><input type="text" maxlength="50" size="20" name="user" id="usrnm" placeholder="Ваш логин"/></div>
<div class="login-input"><input type="password" maxlength="15" size="20" name="password" id="pswd" placeholder="Ваш пароль"/></div>
<div class="login-button"><button type="submit" value="Вход" name="sbm" onclick="loginsub();return false;">Войти на сайт</button></div>
</form>

Суть в том, что когда нажимаю войти высвечивается окно (Unknown error) хоть пароль правильный или даже неправильный будет и открывает по 2 раза окно
Страна: (RU)
leontevm451
Среда, 22 Апреля 2020, 10:49 | Сообщение 2
Оффлайн
Пользователи
Сообщений:5
Награды: 0
Скриншоты приклепил

Добавлено (2020-04-22, 12:15)
---------------------------------------------
Хотел дополнить, что при вводе правильного пароля все работает, но только высвечиваются эти окна которые выше на скриншотах

Прикрепления: 3083600.png (2.2 Kb) · 5116295.png (4.9 Kb) · 1061878.png (18.6 Kb)
Страна: (RU)
Kosten
Среда, 22 Апреля 2020, 12:32 | Сообщение 3
Оффлайн
Администраторы
Сообщений:44490
Награды: 70
Чисто по поиску по ключевым фразам, посмотрите здесь - https://u.to/1YYrGA
Страна: (RU)
-SAM-
Среда, 22 Апреля 2020, 13:02 | Сообщение 4
Онлайн
Друзья сайта
Сообщений:896
Награды: 40
leontevm451, если код правильный (допустим, могла потеряться при перепечатке с сайта где-то ;) + баги были, что это в системе подменяло на смайлики и при правке в визуальном редакторе), то проверить включена ли в настройках (ПУ сайта, пользователи) старая форма входа (наверное, тоже нужно, особенно когда сайт со смешанными пользователями - не только uID-поддержка, а есть еще локальные регистрации).

Как понимаю, что это ставите, так как вырезали библиотеку jQuery у себя (на замену системному), иначе смысл скрипта?


UPD.:
Цитата leontevm451 ()
-SAM-, не совсем понял про скрипт u.js
Так вопрос в том, что зачем он нужен? Он нужен в том случае, если убирают системный скрипт и ставят функционал этот отдельно. Если правки в код не вносили, то скрипт отвалился в результате обновления на стороне системы, скорее всего. Если системный ставить, то всё работает же (ссылку там давал на тему, что тоже разбирали вопрос про форму входа в всплывающем окне).
"Просто в стандартном /.s/src/uwnd.min.js слишком много лишнего кода, да и при входе долго думает, а с уменьшенным кодом сразу работает" © leontevm451 [из ЛС] - понятно.




Помог? Скажи спасибо в виде "+" - вам мелочь, а мне приятно.
Бесплатное оказание помощи в ответах на "Вопросы про uCoz".


Сообщение отредактировал
-SAM- - Среда, 22 Апреля 2020, 14:56
Страна: (UA)
leontevm451
Среда, 22 Апреля 2020, 13:45 | Сообщение 5
Оффлайн
Пользователи
Сообщений:5
Награды: 0
Цитата Kosten ()
Чисто по поиску по ключевым фразам, посмотрите здесь - https://u.to/1YYrGA


С этой темы и брал скрипт.

Добавлено (2020-04-22, 13:46)
---------------------------------------------
-SAM-, не совсем понял про скрипт u.js

Форма стоит старая

Страна: (RU)
  • Страница 1 из 1
  • 1
Поиск: