Skip to content
La2Base
Home
DownloadsWikiForumFAQ
Search
ruen
Sign up Login
HomeFilesWikiLogin
  • Home
  • Downloads
  • Wiki
  • FAQ
  • Contact Us
  • About
  • Rules
  • Privacy
  • Terms of Service

© 2026 la2base.com · All rights reserved

ruen
Forum/Web обвязка/[помощь] Регистрация аккаунта (mw 2.2)
Search

[помощь] Регистрация аккаунта (mw 2.2)

13 replies299 viewsCurrently viewing: 1
cosmo
cosmo

User

Бывалый

Posts: 186

На форуме с: 04/17/2008

Репутация: +146

Рейтинг: 0

· 04/01/2009, 07:15 AM

Проблема в следующем: ни один скрипт регистрации для moy-web, найденный мною на форуме не регистрирует аккаунты.


Нашел множество тем с такими же проблемами, но у всех проблема была в запросе скрипта в БД. Но конфигах все указано правильно, и запросы в базу тоже соответствуют таблицам. Сборка - la2base 1.1.7.


Видимо что-то не пропускает скрипт... Он коннектится к базе, но не до конца. Например, если при регистрации указать уже существующий аккаунт, то он выдаст ошибку о том, что аккаунт уже существует.


P.S. Скрипт смены пароля работает.

0
sanja
sanja

User

Бывалый

Posts: 197

На форуме с: 08/26/2008

Репутация: +280

Рейтинг: 0

· 04/01/2009, 01:59 PM

Вот с МВ 2.2
проверял у меня работал


Код
<?php
if(empty($mw))
{
  header ("Location: ..");
  exit;
}
?>
<center><h4>АККАУНТ</H4><hr>
| <a href="index.php?id=reg_false">Регистрация</a>
| <a href="index.php?id=changepassword2">Сменить пароль</a>
|<a href=index.php?id=msg>Написать GMу</a>|<br><hr>
</center>  
<H4>Регистрация</h4>
<br><BR><ul>
<LI> Аккаунт и пароль не могут быть пустыми.<BR>
<LI> Аккаунт и пароль не могут содержать менее 4 знаков
и больее 15 знаков.<BR>
<LI>Аккаунт и пароль пишутся латинскими буквами или цифрами.<BR><BR><BR>
</ul>

<script type="text/javascript">//<![CDATA[
function isAlphaNumeric(value)
{
  if (value.match(/^[a-zA-Z0-9]+$/))
    return true;
  else
    return false;
}
function checkform(f)
{
  if (f.account.value=="")
  {
    alert("Заполните все поля формы");
    return false;
  }
  if (!isAlphaNumeric(f.account.value))
  {
    alert("Заполните все поля формы");
    return false;
  }
  if (f.password.value=="")
  {
    alert("Не введен пароль");
    return false;
  }
  if (!isAlphaNumeric(f.password.value))
  {
    alert("444444");
    return false;
  }
  if (f.password2.value=="")
  {
    alert("Не введен повтор пароля");
    return false;
  }
  if (f.password.value!=f.password2.value)
  {
    alert("Не совпадает пароль");
    return false;
  }
  return true;
}
//]]></script>
<form method="post" action="index.php?id=reg_false" onsubmit="return checkform(this)">
<table>
<tr>
  <td>Логин</td>
  <td><input type="text" name="account" maxlength="15" /></td>
</tr>
<tr>
  <td>Пароль</td>
  <td><input type="password" name="password" maxlength="15" /></td>
</tr>
<tr>
  <td>Повторить пароль</td>
  <td><input type="password" name="password2" maxlength="15" /></td>
</tr>
<tr>
  <td colspan="2" style="text-align: center;"><br />
  <input type="submit" name="submit" value="Регистрация" /></td>
</tr>
</table>
</form>

<?php
if(ereg("^([a-zA-Z0-9_-])*$", $_POST['account']) && ereg("^([a-zA-Z0-9_-])*$", $_POST['password']) && ereg("^([a-zA-Z0-9_-])*$", $_POST['password2']))
{
    if ($page="index.php" && $_POST['account'] && strlen($_POST['account'])<16 && strlen($_POST['account'])>3 && $_POST['password'] && $_POST['password2'] && $_POST['password']==$_POST['password2'])
    {    
        $check=mysql_query("select * from accounts where login='".$_POST['account']."'");
        $check1=mysql_num_rows($check);
        if($check1>0)
        {
            echo "<p clss='error'><b>Ошибка  при регистрации: такой аккаунт уже сущетвует.</b></p>";
        }
        else
        {
              mysql_query("INSERT INTO accounts (login, password, access_level) VALUES ('".$_POST['account']."', '".base64_encode(pack('H*', sha1($_POST['password'])))."', 0)", $link);
              mysql_close($link);
             print '<p class="error"><b>Регистрация прошла успешно</b></p>';
        }
    }
    else
    {
      print '<p class="error"><b> </b></p>'.mysql_error();
    }
}
else
{
    echo "Введенные вами данные не прошли проверку на безопасность. Пожалуйста, попробуйте зарегистрироваться с другим логином и паролем.";
}
?>
<br><br><br><br><br><br>

0
cosmo
cosmo

User

Бывалый

Posts: 186

На форуме с: 04/17/2008

Репутация: +146

Рейтинг: 0

· 04/02/2009, 12:40 PM

Я знаю, скрипты все рабочие, проблема в коннекте к базе. Пишет, что регистрация прошла успешно, а аккаунт не создается.

0
slastik24
slastik24

User

Бывалый

Posts: 199

На форуме с: 08/13/2008

Репутация: +135

Рейтинг: 0

· 04/02/2009, 12:45 PM

Рекомендую в следующий раз пользоваться поиском, так как данные проблемы были рассмотрены не раз!
А ошибка в названии таблицы access_level, так как у La2Base эта таблица называется accesslevel...И вобще DLE рулит, в топку этот МВ(совет) big_boss.gif

Цитата
<?php
if(empty($mw))
{
header ("Location: ..");
exit;
}
?>
<center><h4>АККАУНТ</H4><hr>
| <a href="index.php?id=reg_false">Регистрация</a>
| <a href="index.php?id=changepassword2">Сменить пароль</a>
|<a href=index.php?id=msg>Написать GMу</a>|<br><hr>
</center>
<H4>Регистрация</h4>
<br><BR><ul>
<LI> Аккаунт и пароль не могут быть пустыми.<BR>
<LI> Аккаунт и пароль не могут содержать менее 4 знаков
и больее 15 знаков.<BR>
<LI>Аккаунт и пароль пишутся латинскими буквами или цифрами.<BR><BR><BR>
</ul>

<script type="text/javascript">//<![CDATA[
function isAlphaNumeric(value)
{
if (value.match(/^[a-zA-Z0-9]+$/))
return true;
else
return false;
}
function checkform(f)
{
if (f.account.value=="")
{
alert("Заполните все поля формы");
return false;
}
if (!isAlphaNumeric(f.account.value))
{
alert("Заполните все поля формы");
return false;
}
if (f.password.value=="")
{
alert("Не введен пароль");
return false;
}
if (!isAlphaNumeric(f.password.value))
{
alert("444444");
return false;
}
if (f.password2.value=="")
{
alert("Не введен повтор пароля");
return false;
}
if (f.password.value!=f.password2.value)
{
alert("Не совпадает пароль");
return false;
}
return true;
}
//]]></script>
<form method="post" action="index.php?id=reg_false" onsubmit="return checkform(this)">
<table>
<tr>
<td>Логин</td>
<td><input type="text" name="account" maxlength="15" /></td>
</tr>
<tr>
<td>Пароль</td>
<td><input type="password" name="password" maxlength="15" /></td>
</tr>
<tr>
<td>Повторить пароль</td>
<td><input type="password" name="password2" maxlength="15" /></td>
</tr>
<tr>
<td colspan="2" style="text-align: center;"><br />
<input type="submit" name="submit" value="Регистрация" /></td>
</tr>
</table>
</form>

<?php
if(ereg("^([a-zA-Z0-9_-])*$", $_POST['account']) && ereg("^([a-zA-Z0-9_-])*$", $_POST['password']) && ereg("^([a-zA-Z0-9_-])*$", $_POST['password2']))
{
if ($page="index.php" && $_POST['account'] && strlen($_POST['account'])<16 && strlen($_POST['account'])>3 && $_POST['password'] && $_POST['password2'] && $_POST['password']==$_POST['password2'])
{
$check=mysql_query("select * from accounts where login='".$_POST['account']."'");
$check1=mysql_num_rows($check);
if($check1>0)
{
echo "<p clss='error'><b>Ошибка при регистрации: такой аккаунт уже сущетвует.</b></p>";
}
else
{
mysql_query("INSERT INTO accounts (login, password, accesslevel) VALUES ('".$_POST['account']."', '".base64_encode(pack('H*', sha1($_POST['password'])))."', 0)", $link);
mysql_close($link);
print '<p class="error"><b>Регистрация прошла успешно</b></p>';
}
}
else
{
print '<p class="error"><b> </b></p>'.mysql_error();
}
}
else
{
echo "Введенные вами данные не прошли проверку на безопасность. Пожалуйста, попробуйте зарегистрироваться с другим логином и паролем.";
}
?>
<br><br><br><br><br><br>

— I am DJ

0
cosmo
cosmo

User

Бывалый

Posts: 186

На форуме с: 04/17/2008

Репутация: +146

Рейтинг: 0

· 04/02/2009, 12:55 PM

с каких это пор таблица называется accesslevel? прочитай первый пост, все запросы сходятся! а насчет ДЛЕ не спорю, но нужно именно МВ.

0
sanja
sanja

User

Бывалый

Posts: 197

На форуме с: 08/26/2008

Репутация: +280

Рейтинг: 0

· 04/02/2009, 05:56 PM

ну во 1 ето не таблица а поле....а во 2 у ла2бейз оно вроде access_level а не accesslevel (просто при себе сечас нету базы...знаю что она отличается от Эму, а в Эму она accessLevel)

0
Chris
Chris

Author

Новичок

Posts: 18

На форуме с: 03/05/2009

Рейтинг: 0

· 04/02/2009, 06:28 PM

точно такая же беда, и что самое интересное невыдает никаких видимых ошибок базы. пишет что регистрация прошла супешно.

0
Chris
Chris

Author

Новичок

Posts: 18

На форуме с: 03/05/2009

Рейтинг: 0

· 04/03/2009, 10:05 AM

вот, замените этот файл, у кого проблемы с регистрацией..
_http://dump.ru/file/2344923

0
cosmo
cosmo

User

Бывалый

Posts: 186

На форуме с: 04/17/2008

Репутация: +146

Рейтинг: 0

· 04/03/2009, 10:42 AM

Chris: вот, замените этот файл, у кого проблемы с регистрацией..
_http://dump.ru/file/2344923

в 4 посте тоже самое. еще раз говорю, проблема не в скрипте, а скорее всего в коннекте с базой.

0
Chris
Chris

Author

Новичок

Posts: 18

На форуме с: 03/05/2009

Рейтинг: 0

· 04/03/2009, 04:13 PM

проблема в именно скрипте, я проправил и теперь нормально регается через сайт. сборка (l2emu)

0
cosmo
cosmo

User

Бывалый

Posts: 186

На форуме с: 04/17/2008

Репутация: +146

Рейтинг: 0

· 04/03/2009, 04:36 PM

Может хватит набивать посты, а?!! СКРИПТ РАБОЧИЙ, ПРОВЕРЯЛ НА ДРУГОЙ БАЗЕ, ВСЁ РАБОТАЕТ. но в удаленной базе аккаунты не регистрируются, хотя пишет, что он успешно зарегистрирован...

0
Дима
Дима

User

Бывалый

Posts: 223

На форуме с: 06/02/2009

Репутация: +73

Рейтинг: 0

· 04/29/2009, 07:45 PM

Это не скрипт,у меня такое было,ток вот точно не повню что зделал,хм проверь пути к базе все по сиди и всё проверь,может косяк найдёш..

— Ушол в себя - вернусь не скоро...

0
Руслан
Руслан

Moderator

Ветеран

Posts: 1201

На форуме с: 12/14/2007

Репутация: +775

Рейтинг: 0

· 04/29/2009, 08:32 PM

mexik: так куда хоть копать в какую сторону, в мускуле тьма параметров и еще больше опций.. вспомни как решил ..


А права пользователю, через которого идет коннект скрипта к БД, на запись даны?

На Форуме я тоже Radar!
Я везде Radar!

0
Topic is closed for replies