[web][sql] немогу настроить регистрацию через сайт
5 replies112 viewsCurrently viewing: 1
· 05/06/2009, 08:20 AM
Сборка: Interlude, La2base 1.1.6
Краткое изложение СУТИ проблемы: на сайте невозможно зерегитса при попытке зайти на сайт выдает MySQL: No connection, possible configuration Error! _http://l2ultras.na.by/acm/
Вопрос: как ето исправить?
ЗЫ Перечитал весь роздел для новичков НЕТУ ТУТ ТАКОЙ ПРОБЛЕМЫ!!! ВСЕ 85 страниц
0
· 05/06/2009, 09:33 AM
1) либо скрипт не видит сервер БД
2) либо кривые настройки
WebDeveloper сервера DARKWORLD
0
· 05/06/2009, 09:35 AM
Раскрывающийся текст
<?
#config
$mysql_server ="82.144.200.13";
$mysql_user ="root";
$mysql_pass ="maxthebest";
$mysql_db ="l2jdb";
mysql_connect($mysql_server,$mysql_user,$mysql_pass);
mysql_select_db($mysql_db);
#config
#function begin
function newaccount($account,$password){
$passworden = base64_encode(pack('H*', sha1($password)));
$query="INSERT INTO accounts (login, password) VALUES('$account', '$passworden')";
$result=mysql_query($query);
return true;
}
function displayErrors($messages) {
foreach($messages as $msg){
print("<li>$msg</li>\n");
}
print("</ul>\n");
}
function field_validator($field_descr, $field_data,
$field_type, $min_length="", $max_length="",
$field_required=1) {
global $messages;
if(!$field_data && !$field_required){ return; }
$field_ok=false;
$email_regexp="^([a-zA-Z0-9_\-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|";
$email_regexp.="(([a-zA-Z0-9\-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$";
$data_types=array(
"email"=>$email_regexp,
"digit"=>"^[0-9]$",
"number"=>"^[0-9]+$",
"alpha"=>"^[a-zA-Z]+$",
"alpha_space"=>"^[a-zA-Z ]+$",
"alphanumeric"=>"^[a-zA-Z0-9]+$",
"alphanumeric_space"=>"^[a-zA-Z0-9 ]+$",
"string"=>""
);
if ($field_required && empty($field_data)) {
$messages[] = "Вы не ввели $field_descr.";
return;
}
if ($field_type == "string") {
$field_ok = true;
} else {
$field_ok = ereg($data_types[$field_type], $field_data);
}
if (!$field_ok) {
$messages[] = "Введите правильно $field_descr.";
return;
}
if ($field_ok && $min_length) {
if (strlen($field_data) < $min_length) {
$messages[] = "$field_descr вы ввели меньше чем $min_length знака.";
return;
}
}
if ($field_ok && $max_length) {
if (strlen($field_data) > $max_length) {
$messages[] = "$field_descr вы ввели больше чем $max_length знаком.";
return;
}
}
}
##Function end
##register
if($_POST["register"]){
field_validator("Аккаунт", $_POST["login"], "alphanumeric", 4, 15);
field_validator("пароль", $_POST["password1"], "alphanumeric", 4, 15);
field_validator("потверждение пароля",$_POST["password2"], "alphanumeric", 4, 15);
if(strcmp($_POST["password1"], $_POST["password2"])) {
$messages[]="Вы ошиблись в повторном воде пароля.";
}
$query="SELECT login FROM accounts WHERE login='".$_POST["login"]."'";
$result=mysql_query($query) or die("MySQL query $query failed. Error if any: ".mysql_error());
if( ($row=mysql_fetch_array($result)) ){
$messages[]="Аккаунт с ID \"".$_POST["login"]."\" уже сушествует. Попробуйте другой.";
}
if(empty($messages)) {
newaccount($_POST["login"], $_POST["password1"]);
$messages[]="Аккаунт ".$_POST['login']." зарегистрирован успешно.";
}
}
?>
<?
if(!empty($messages)){
displayErrors($messages);
}
?>
<form method="POST">
<table border=0 cellspacing=0 cellpadding=0>
<H3>Регистрация</h3><br>
<center>
<tr height=40><td>Логин:</td><td><input type="text" name="login">
</td></tr>
<tr height=40><td>Пароль:</td><td><input type="password" name="password1"></td></tr>
<tr height=40><td>Повторите пароль:</td><td><input type="password" name="password2"></td></tr>
<tr height=40><td></td><td></td><td><input type="submit" name="register" value="Регистрация"></td></tr>
</table>
</form>
<br><br><br><br><br><br>
#config
$mysql_server ="82.144.200.13";
$mysql_user ="root";
$mysql_pass ="maxthebest";
$mysql_db ="l2jdb";
mysql_connect($mysql_server,$mysql_user,$mysql_pass);
mysql_select_db($mysql_db);
#config
#function begin
function newaccount($account,$password){
$passworden = base64_encode(pack('H*', sha1($password)));
$query="INSERT INTO accounts (login, password) VALUES('$account', '$passworden')";
$result=mysql_query($query);
return true;
}
function displayErrors($messages) {
foreach($messages as $msg){
print("<li>$msg</li>\n");
}
print("</ul>\n");
}
function field_validator($field_descr, $field_data,
$field_type, $min_length="", $max_length="",
$field_required=1) {
global $messages;
if(!$field_data && !$field_required){ return; }
$field_ok=false;
$email_regexp="^([a-zA-Z0-9_\-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|";
$email_regexp.="(([a-zA-Z0-9\-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$";
$data_types=array(
"email"=>$email_regexp,
"digit"=>"^[0-9]$",
"number"=>"^[0-9]+$",
"alpha"=>"^[a-zA-Z]+$",
"alpha_space"=>"^[a-zA-Z ]+$",
"alphanumeric"=>"^[a-zA-Z0-9]+$",
"alphanumeric_space"=>"^[a-zA-Z0-9 ]+$",
"string"=>""
);
if ($field_required && empty($field_data)) {
$messages[] = "Вы не ввели $field_descr.";
return;
}
if ($field_type == "string") {
$field_ok = true;
} else {
$field_ok = ereg($data_types[$field_type], $field_data);
}
if (!$field_ok) {
$messages[] = "Введите правильно $field_descr.";
return;
}
if ($field_ok && $min_length) {
if (strlen($field_data) < $min_length) {
$messages[] = "$field_descr вы ввели меньше чем $min_length знака.";
return;
}
}
if ($field_ok && $max_length) {
if (strlen($field_data) > $max_length) {
$messages[] = "$field_descr вы ввели больше чем $max_length знаком.";
return;
}
}
}
##Function end
##register
if($_POST["register"]){
field_validator("Аккаунт", $_POST["login"], "alphanumeric", 4, 15);
field_validator("пароль", $_POST["password1"], "alphanumeric", 4, 15);
field_validator("потверждение пароля",$_POST["password2"], "alphanumeric", 4, 15);
if(strcmp($_POST["password1"], $_POST["password2"])) {
$messages[]="Вы ошиблись в повторном воде пароля.";
}
$query="SELECT login FROM accounts WHERE login='".$_POST["login"]."'";
$result=mysql_query($query) or die("MySQL query $query failed. Error if any: ".mysql_error());
if( ($row=mysql_fetch_array($result)) ){
$messages[]="Аккаунт с ID \"".$_POST["login"]."\" уже сушествует. Попробуйте другой.";
}
if(empty($messages)) {
newaccount($_POST["login"], $_POST["password1"]);
$messages[]="Аккаунт ".$_POST['login']." зарегистрирован успешно.";
}
}
?>
<?
if(!empty($messages)){
displayErrors($messages);
}
?>
<form method="POST">
<table border=0 cellspacing=0 cellpadding=0>
<H3>Регистрация</h3><br>
<center>
<tr height=40><td>Логин:</td><td><input type="text" name="login">
</td></tr>
<tr height=40><td>Пароль:</td><td><input type="password" name="password1"></td></tr>
<tr height=40><td>Повторите пароль:</td><td><input type="password" name="password2"></td></tr>
<tr height=40><td></td><td></td><td><input type="submit" name="register" value="Регистрация"></td></tr>
</table>
</form>
<br><br><br><br><br><br>
Пользуйся на здоровье
0
Topic is closed for replies




