Показать сообщение отдельно
Старый 21.04.2010, 18:03   #6
terrible
Гость
 
Сообщений: n/a
По умолчанию

srv38 Согласен recaptcha требует инет.
Вот и сама рега, красным выделена запрос капчи.
Код:
              
<? session_start();?>
<?php        

$db1 = "realmd";                    
$db2 = "mangos";               
$db3 = "characters";           

$host = "localhost";          
$user = "root";                  
$pass = "mangos";                     
$port = "3306";                   

$tbc = 2;                       
$database_encoding = 'CP1251';         

$realmd = mysql_connect("$host:$port", "$user", "$pass", True);       
mysql_selectdb("$db1", $realmd);       

$world = mysql_connect("$host:$port", "$user", "$pass", True);       
mysql_selectdb("$db2", $world);       

$characters = mysql_connect("$host:$port", "$user", "$pass", True);       
mysql_selectdb("$db3", $characters);       

echo "       
<script type=\"text/javascript\">       
function isAlphaNumeric(value)       
{       
        if (value.match(/^[a-zA-Z0-9_]+$/))       
          return true;       
        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(\"Запрещенные символы в пароле\");       
          return false;       
        }       
        if (f.password2.value==\"\")       
        {       
          alert(\"Вы не ввели повтор пароля\");       
          return false;       
        }       
        if (f.password.value != f.password2.value)       
        {       
          alert(\"Пароли не совпадают\");       
          return false;       
        }       
        if (f.email.value==\"\")       
        {       
          alert(\"Вы не ввели e-mail\");       
          return false;       

        }       
}       
</script>";       

echo "       

<font color=#00CC00>       
</font><br><br>       
<center>       
<form method=post action=registration.php onsubmit=\"return checkform(this)\">        
<table>       

<tr>       
        <td><font size=4px > Логин: </font><Br>       
        <input type=text name=account maxlength=20 class=field></td>       
</tr>       

<tr>       
        <td><font size=4px> Пароль:</font><Br>       
        <input type=password name=password maxlength=20 class=field></td>       
</tr>       
<tr>       
        <td><font size=4px> Повторить пароль:</font> <Br>       
        <input type=password name=password2 maxlength=20 class=field></td>       
</tr>
<tr> 
<td>
<form action=/captcha.php method=post>
<img src=/captcha.php alt=Картинка /><br />
</form>    
</td>  
</tr>
<tr>       
        <td><font size=4px> e-mail: </font><Br>        
        <input type=text name=email  maxlength=20 class=field></td>      
</tr>       
       <tr>       
        <td colspan=2 style=\"text-align: center;\"><br><INPUT class=button
                     WIDTH: 160px; HEIGHT: 30px tabIndex=3 type=image
                    src=img/reg.png
                    value=reg border=0><br></td>       
       </tr> 
	   
	        
</table>       
</form></center>";       
?>

<?
if (isset($_SESSION["captcha"]) && $_SESSION["captcha"]===$_POST["captcha"]) echo "Текс введен верно";
else echo "Текст введен не верно";
unset($_SESSION["captcha"]);?>
<?
if (isset($_POST['account'])) {       
if ($_POST['account'] && strlen($_POST['account'])<=20 && strlen($_POST['account'])>=3 && strlen($_POST['password'])>=3 && $_POST['password'] && $_POST['password2'] && $_POST['password']==$_POST['password2']) {       
        if (!eregi("^[a-zA-Z0-9_]+$", $_POST['account']))       
          die ("<p>Error: SQL-Injection</p>");       
        if (!eregi("^[a-zA-Z0-9_]+$", $_POST['password']))       
          die ("<p>Error: SQL-Injection</p>");       
          $pass = ($_POST['password']);       
          $username = ($_POST['account']);       
          $result = mysql_query("SELECT * FROM account WHERE username='".$_POST['account']."' AND sha_pass_hash='$pass'", $realmd);       
          if (mysql_num_rows($result) != 0) {       
              echo "<center><p><font color=#CC0000><b>Такой аккаунт уже есть!</b></font></p></center>";       
          } else {       
              if (!mysql_query("INSERT INTO account (username, sha_pass_hash, gmlevel, email, expansion) VALUES ('$username', SHA1(CONCAT(UPPER('$username'),':',UPPER('$pass'))), 0, '".$_POST['email']."', $tbc)", $realmd)) {echo "<center><p><font color=#CC0000><b>Ошибка</b></font></p></center>";} else {echo "<center><p><font color=#00CC00><b>Аккаунт успешно зарегестрирован! </b></font></p></center>";}       
          }       
} else {       
          echo "<center><p><font color=#CC0000><b>Проверьте правильность ввода!</b></font></p></center>";       
}       
}       

?>
  Ответить с цитированием