1. Задавайте здесь вопросы о коде, которые не подходят в другие разделы, такие как:
    Дизайн > Верстка
    PHP > Как сделать на PHP
    Скрыть объявление

registr page для игрового серевера.

Тема в разделе "Web Coding", создана пользователем E-body, 12 мар 2008.

Статус темы:
Закрыта.
Модераторы: latteo
  1. E-body

    E-body

    Регистр.:
    6 сен 2007
    Сообщения:
    980
    Симпатии:
    315
    Делал для вебсервера регистрационную страничку идея частично взята с другого исходника.
    Хочу немного навести порядок и пофиксить уязвимость если такова меется.
    И составить шаблоны чтоб инклюдить в этот скрипт
    header.html
    content.html
    footer.html

    помогите пожалста. от этого зависит безопастность сервера.

    на днях купил книгу по програмированию php Денис Колисниченко автор.
    теперь часто буду у вас гостить.
    PHP:
    <?php
    include 'tconfig.php';
    require 
    'tconfig.php';
    //echo join('', file('login-form.html'));
    echo "<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
    <html>
    <head>
    <title>Warcraft</title>
    <meta http-equiv='Content-Type' content='text/html; charset=ISO 10646' />
    <link href='style.css' rel='stylesheet' type='text/css' />
    </head>
    <body>
    <div id='container'>
        <div id='header'>
            <div id='nav'>
                <ul>
                    <li><a href='http://sayt-ru'>News</a></li>
                    <li><a href='http://sayt-ru'>Game Guide</a></li>
                    <li><a href='http://sayt-ru'>Interactive</a></li>                
                </ul>
                <ul>
                    <li><a href='http://sayt-ru'>Account</a></li>
                    <li><a href='http://sayt-ru'>Support</a></li>
                    <li><a href='http://sayt-ru'>Media</a></li>
                </ul>
            </div>
        </div>
        
        <div id='pagebottom'>
            <div id='left'>
                <div id='text2'>
                    <img src='images/cap-community-news.gif' alt='Community News' />
                    
                    <p><div class='heading2'>Name</div></p>
                    
                    <p>"
    ;

    echo 
    "<font color='black'><b>1. <u>Remember to use only lower case characters!</u></b></font> <br><font color='black'><b>2.</b></font> If you cant login or/and having in-game issues know it's because you used BIG letters!<br><font color='black'><b>3.</b></font> Register only once per E-Mail, two accounts with same E-Mail will be eliminated!";
    $tabelka '<table>
    <form action=register.php method=post>
    <tr><td>Login</td><td><input type=text name=login value="'
    .$_POST['login'].'"></td></tr>
    <tr><td>Password</td><td><input type=password name=pass></td></tr>
    <tr><td>Repeat password</td><td><input type=password name=cpass></td></tr>
    <tr><td>E-Mail</td><td><input type=text name=mail value="'
    .$_POST['mail'].'"></td></tr>
    <tr><td><input type=submit value="Register"></td><td><input type=reset value="Clear fields"></td></tr>
    </form>
    </table>'
    ;

    if(
    $reg_open AND isset($_POST['login']))
    {
    $conn=@mssql_connect($hostbazy,$user,$haslo) or die("<b>Critical Error</b><br>MSSQL server is offline OR I can't Access to it !");
    @
    mssql_select_db($nazwabazy$conn) or die("<b>Critical Error</b><br>Database don't exists OR I can't Access to it !");

    $login $_POST['login'];
    $pw $_POST['pass'];
    $cpw $_POST['cpass'];
    $email $_POST['mail'];

    $login trim($login);
    $pw trim($pw);
    $cpw trim($cpw);

    if(
    ereg("[^0-9a-zA-Z_-]"$login$str))
        {
        echo 
    'в логине плохие знаки';
        echo 
    '<br>'.$tabelka;
        }
    elseif(
    ereg("[^0-9a-zA-Z_-]"$pw$str))
        {
        echo 
    'знаки';
        echo 
    '<br>'.$tabelka;
        }
    elseif (empty(
    $login) || empty($email) || empty($pw) || empty($cpw)) 
        {
        echo 
    'заполните поля<br>'.$tabelka;
        }
    elseif (
    strpos('\'',$email)) 
        {
        echo 
    'проверка '.$email.' вашего почтовика<br>'.$tabelka;
        }
    else
        {
        
    $login_test strtolower($login);
        
    $resultx mssql_query("SELECT LOWER(UT_USERID) FROM usertable 
        WHERE LOWER(UT_USERID) = ('
    $login_test')") or die;

        if (
    mssql_num_rows($resultx)) 
            {
            echo 
    '<br>ERROR:<BR>Login name `'.$login.'` already exist! please choose other login name!<br>'.$tabelka;
            }
        elseif (
    strlen($login) < 4
            {
            echo 
    '<br>ERROR:<br>Login minimum 4 characters<br>'.$tabelka;
            }
        elseif (
    strlen($pw) < 4
            {
            echo 
    '<br>ERROR:<br>Password minimum 4 characters<br>'.$tabelka;
            }
        elseif (
    strlen($pw) > 10
            {
            echo 
    '<br>ERROR:<br>Password max 10 characters<br>'.$tabelka;
            } 
        elseif (
    strlen($login) > 10
            {
            echo 
    '<br>ERROR:<br>Login max 10 characters<br>'.$tabelka;
            } 
        elseif (
    $pw != $cpw
            {
            echo 
    'причина3<br>'.$tabelka;
            }
        else 
            {
            
    mssql_query("INSERT INTO usertable (UT_USERID,UT_PASSWORD,UT_ACCOUNTID,UT_DIV,UT_EMAIL) VALUES ('".$login."','".$pw."',convert(binary,'".$login."'),0,'".$email."')") or die('error, account exists');
            echo 
    "<br>Account Created, HAVE FUN!<BR>";
            }
        }
    }
    elseif(
    $reg_open)
    {
    echo 
    $tabelka;
    }
    else 
    {
    echo 
    'Everybody';
    }

    //////////////////////////////////////////


    echo " </p>
                    
                </div>
                
            </div>
            <div id='right'>
                <div class='heading2'>QUICK LINKS</div>
                <div id='quicklinks'>
                    <ul>
                        <li><a href='http://sayt-ru'>Contact</a></li>
                        <li><a href='http://sayt-ru'>Realms Status</a></li>
                        <li><a href='http://sayt-ru'>Account Creation</a></li>
                        <li><a href='http://sayt-ru'>Account Management</a></li>
                        <li><a href='http://sayt-ru'>Cetrieve Passward</a></li>
                    </ul>
                </div>
                <div class='heading2'>Server stats</div>"
    ;
                



    $onlineoffline "127.0.0.1";
    if (
    $check=@fsockopen($onlineoffline,$portgs,$ERROR_NO,$ERROR_STR,(float)0.5)) 
        { 
        
    fclose($check); 
        echo 
    "<br><font color='black'>Login Server: </font><font color='green'>Online</font>"
        }
    else 
        { 
        echo 
    "<br><font color='black'>Login Server:</font> <font color='red'>Offline</font>"
        } 

    $onlineoffline1 "127.0.0.1";
    if (
    $check=@fsockopen($onlineoffline1,$portgs1,$ERROR_NO,$ERROR_STR,(float)0.5)) 
        { 
        
    fclose($check); 
        echo 
    "<br><font color='black'>Auth Server:</font> <font color='green'>Online</font>"
        }
    else 
        { 
        echo 
    "<br><font color='black'>Auth Server: </font><font color='red'>Offline</font>"
        } 

    $onlineoffline2 "127.0.0.1";
    if (
    $check=@fsockopen($onlineoffline2,$portgs2,$ERROR_NO,$ERROR_STR,(float)0.5)) 
        { 
        
    fclose($check); 
        echo 
    "<br><font color='black'>World Server: </font><font color='green'>Online</font>"
        }
    else 
        { 
        echo 
    "<br><font color='black'>World Server: </font><font color='red'>Offline</font>"
        } 


    $onlineoffline3 "127.0.0.1";
    if (
    $check=@fsockopen($onlineoffline3,$portgs3,$ERROR_NO,$ERROR_STR,(float)0.5)) 
        { 
        
    fclose($check); 
        echo 
    "<br><font color='black'>Map Server: </font><font color='green'>Online</font>"
        }
    else 
        { 
        echo 
    "<br><font color='black'>Map Server: </font><font color='red'>Offline</font>"
        }
    echo 
    "<Br>";
    /// online statistics server end ////


    $conn=@mssql_connect($hostbazy,$user,$haslo) or die("<b>Critical Error</b><br>MSSQL server is offline OR I can't Access to it !"); 
    @
    mssql_select_db($nazwabazy$conn) or die("<b>Critical Error</b><br>Database don't exists OR I can't Access to it !"); 
    $result mssql_query(
    SELECT     JOIN010_ACCOUNTNAME  
    FROM         JOIN010TL"
    ); 
    $countmssql_num_rows$result ); 
    print 
    "<font color='black'>Connected: </font>"

    .$count.

    "</br>"
    for (
    $i 0$i $count; ++$i
         { 
             
    $char mssql_fetch_row($result); 
             print 
    $char[0]."</br>"
         } 


    echo
    "            <br />
                
                <a href='http://sayt-ru'>Cross Realm Battlegrounds</a><br />
                <a href='http://sayt-ru'>World PvP </a><br />
                <a href='http://sayt-ru'>Rogue Talents revamped </a>
                
            </div>
        </div>
        <div id='footer'>
            <a href='http://sayt-ru'>News</a>   
            <a href='http://sayt-ru'>Game Guide </a>  
            <a href='http://sayt-ru'>Interactive</a>   
            <a href='http://sayt-ru'>Community</a>   
            <a href='http://sayt-ru'>Account</a>   
            <a href='http://sayt-ru'>Support</a>   
            <a href='http://sayt-ru'>Media</a>
            
            <p><a href='http://sayt-ru'>Legal Documents</a>       
                <a href='http://sayt-ru'>Game Policies</a> <br />
                ©2006 <a href='http://sayt-ru'>WorldofWarcraft</a>. All rights reserved.</p>
        </div>
    </div>
    </body>
    </html>"
    ;
    ?>
    PHP:
    <?php
    $user 
    'логин';
    $haslo 'пасс';
    $topbaza "Game"
    $nazwabazy "Account";
    $hostbazy "ип";

    $portgs "порт";
    $portgs1 "порт";
    $portgs2 "порт";
    $portgs3 "порт";
    $reg_open true;
    ?>
     
  2. admLoki

    admLoki генератор случайного PHP

    Регистр.:
    14 сен 2006
    Сообщения:
    481
    Симпатии:
    93
    1. Зачем делать инклуд и реквайр одного и того-же файла ?
    2. Скрипт написан глупо даже для новичка. Вместо того чтобы выдавать статический HTML через PHP скрипт можно инклудить файлик с этим самым HTML.
    3. Совет - выводи HTML не через echo, а через print(); .
     
  3. E-body

    E-body

    Регистр.:
    6 сен 2007
    Сообщения:
    980
    Симпатии:
    315
    какое отличие echo от print?
    Насчет глупо составленного кода согласен... прочитав пару десатков страниц сам офигел как такой бред написал. Сделаю по другому, вывод хтмл переменными. ;)
     
  4. masto

    masto Прохожие

    аргументируй.
    echo быстрее print().
     
  5. D@nil

    D@nil

    Регистр.:
    1 окт 2006
    Сообщения:
    338
    Симпатии:
    122
    Узаем правильно:
    PHP:
    <?php
    if( условие ) { 
    ?>
    HTML КОд тут
    <?php

    ?>
     
  6. masto

    masto Прохожие

    Чего здесь правильного?
    Мухи отдельно, котлеты отдельно. А лепить всё в один файл - признак дурного тона в программировании.
     
  7. admLoki

    admLoki генератор случайного PHP

    Регистр.:
    14 сен 2006
    Сообщения:
    481
    Симпатии:
    93
  8. Dogmat

    Dogmat Постоялец

    Регистр.:
    16 фев 2007
    Сообщения:
    122
    Симпатии:
    38
    что то не заметил, где там про удобство упоминается?

    а использование возвращаемого значения от print ... даже и не помню, когда мне такое могло бы понадобиться.
     
Статус темы:
Закрыта.