Register for your free account! | Forgot your password?

Go Back   elitepvpers > MMORPGs > Flyff > Flyff Private Server > Flyff PServer Guides & Releases
You last visited: Today at 18:25

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



[Release] Login Script für Admins mit Serverstarter etc

Discussion on [Release] Login Script für Admins mit Serverstarter etc within the Flyff PServer Guides & Releases forum part of the Flyff Private Server category.

Reply
 
Old   #1
 
elite*gold: 0
Join Date: Mar 2011
Posts: 715
Received Thanks: 598
[Release] Login Script für Admins mit Serverstarter etc

Da Jopsi nur kacke macht hab ich mich mal kurz hingesetzt und ein eigenes geschrieben. Ranking Script hab ich nicht dazu gepackt.

Kann sein dass das Script einige Errors wirft. Hab es nicht einmal durchn Apache Service geschmissen :'D

PHP Code:
<?php

/**************************************************/
/**************************************************/
/************ Nur hier werte anpassen *************/
/**************************************************/
/**************************************************/

define('SQL_SERVERNAME','xxx-PC\SQLEXPRESS');
define('SQL_USER',        'sa');
define('SQL_PASSWORD',    'password');
define('PATH_RESOURCE',    'C:\neurospace\resource');
define('PATH_PROGRAM',    'C:\neurospace\program');
define('PATH_WORLD',    'C:\neurospace\resource\worldserver.exe');
define('PATH_ACCOUNT',    'C:\neurospace\program\accountserver.exe');
define('PATH_DATABASE',    'C:\neurospace\resource\database.exe');
define('PATH_CORE',        'C:\neurospace\program\coreserver.exe');
define('PATH_CERTIFIER','C:\neurospace\program\certifier.exe');
define('PATH_LOGIN',    'C:\neurospace\program\loginserver.exe');
define('PATH_CACHE',    'C:\neurospace\program\cacheserver.exe');
define('PORT_WORLD',    2101);
define('PORT_ACCOUNT',    12000);
define('PORT_DATABASE',    7200);
define('PORT_CORE',        1234);
define('PORT_CERTIFIER',23000);
define('PORT_LOGIN',    28000);
define('PORT_CACHE',    15400);
define('PASSWORD_SALT',    'kikugalanet');

/**************************************************/
/**************************************************/
/* Ab jetzt keine Veränderungen mehr vornehmen!!! */
/**************************************************/
/**************************************************/


if( !mssql_connect(SQL_SERVERNAMESQL_USERSQL_PASSWORD) )
    die(
'Can\'t connect to Database.');

session_start();

function 
StartServer($strType)
{
    switch(
$strType)
    {
        case 
'world':         exec('cd 'PATH_RESOURCE.' && start '.PATH_WORLD); break;
        case 
'account':     exec('cd 'PATH_PROGRAM.' && start '.PATH_ACCOUNT); break;
        case 
'database':     exec('cd 'PATH_RESOURCE.' && start '.PATH_DATABASE); break;
        case 
'core':         exec('cd 'PATH_PROGRAM.' && start '.PATH_CORE); break;
        case 
'certifier':     exec('cd 'PATH_PROGRAM.' && start '.PATH_CERTIFIER); break;
        case 
'login':         exec('cd 'PATH_PROGRAM.' && start '.PATH_LOGIN); break;
        case 
'cache':         exec('cd 'PATH_PROGRAM.' && start '.PATH_CACHE); break;
        default: return 
FALSE;
    }
}

function 
CryptPassword($strPassword)
{
    return 
md5(PASSWORD_SALT $strPassword );
}

function 
ChangePassword($strUser$strPass)
{
    if ( 
CheckString$strUser ) )
        return 
'<font color="red">Der Benutzername enthält unerlaubte Zeichen</font>';
    
    if ( 
CheckString$strPass ) )
        return 
'<font color="red">Das gewählte Passwort enthält unerlaubte Zeichen</font>';

    
mssql_query('UPDATE ACCOUNT_TBL SET password = '.CryptPassword($strPass).' WHERE account = '.$strUser);
    return 
'<font color="green">Password wurde geändert</font><br/>';
}

function 
CheckString($str)
{
    if( 
preg_match('/[^a-zA-Z0-9]/',$str) )
        return 
TRUE;
    else
        return 
FALSE;
}

function 
DoLogin($strUser,$strPass)
{
    if ( 
CheckString$strUser ) )
        return 
'<font color="red">Der Benutzername enthält unerlaubte Zeichen</font>';
    
    if ( 
CheckString$strPass ) )
        return 
'<font color="red">Das gewählte Passwort enthält unerlaubte Zeichen</font>';
    
$sqlResult mssql_fetch_arraymssql_query('SELECT count(detail.account) as count
                        FROM
                            [ACCOUNT_DBF].[dbo].[ACCOUNT_TBL_DETAIL] detail,
                            [ACCOUNT_DBF].[dbo].[ACCOUNT_TBL] main
                        WHERE
                            main.account = "'
.$strUser.'" AND
                            main.password = "'
.CryptPassword($strPass).'" AND
                            detail.m_chLoginAuthority > "F" AND
                            detail.account = "'
.$strUser.'"'));
        
    if( 
$sqlResult['count'] >= )
    {
        
$_SESSION["username"] = $strUser;
        
$_SESSION['ip'] = $_REMOTE['SERVER_ADDR'];
        return 
'<font color="red">Login erfolgreich!</font>';
    }
    else
        return 
'<font color="red">Benutzername oder Passwort falsch</font>';
        
}

function 
IsLoggedIn()
{
    if( 
$_SESSION['ip'] == $_REMOTE['SERVER_ADDR'])
        return 
TRUE;
    else
        return 
FALSE;
}

function 
GetServerState($strServer)
{
    switch(
$strServer)
    {
        case 
'world':         $port PORT_WORLD;     break;
        case 
'cache':        $port PORT_CACHE;        break;
        case 
'login':        $port PORT_LOGIN;        break;
        case 
'account':        $port PORT_ACCOUNT;    break;
        case 
'database':    $port PORT_DATABASE;    break;
        case 
'core':        $port PORT_CORE;        break;
        case 
'certifier':    $port PORT_CERTIFIER;    break;
        default: return 
FALSE;
    }
    if( @
fsockopen("127.0.0.1"$port$errno$errstr1) )
        return 
'<font color="green">Online</font>';
    else
        return 
'<font color="red">Offline</font>';
}

function 
GetInfos()
{
    
//0 - accounts // 1 - character // 2 - admin/gm // 3 - online // 4 - peak
    
$info = array();
    
$info[0] = mssql_fetch_arraymssql_query'SELECT count(account) as info FROM [ACCOUNT_DBF].[dbo].[ACCOUNT_TBL]' ) );
    
$info[1] = mssql_fetch_arraymssql_query'SELECT count(m_szName) as info FROM [CHARACTER_01_DBF].[dbo].[CHARACTER_TBL]' ) );
    
$info[2] = mssql_fetch_arraymssql_query'SELECT count(account) as info FROM [ACCOUNT_DBF].[dbo].[ACCOUNT_TBL_DETAIL] WHERE '.ord(m_chLoginAuthority).' > '.ord("F")) );
    
$info[3] = mssql_fetch_arraymssql_query'SELECT count(account) as info FROM [ACCOUNT_DBF].[dbo].[ACCOUNT_TBL] WHERE isuse = "J"' ) );
    
$info[4] = mssql_fetch_arraymssql_query'SELECT TOP 1 number as info FROM [LOGGING_01_DBF].[dbo].[LOG_USER_CNT_TBL] ORDER BY [number] DESC ' ) );

    return 
$info;
}

if( isset( 
$_POST['form_login'] ) )
    
$html_output .= DoLogin($_POST['username'],$_POST['password']).'<br />';
    
if( !
IsLoggedIn() )
{
    
$html_output .= '
                <div style="text-align: center;">
                    Login <br /><br />
                    <form method="post">
                        <input type="text" maxlength="13" name="username" value=""><br /><br />
                        <input type="password" maxlength="16" name="password" value=""><br /><br />
                        <input  type="submit" name="form_login" value="Login"><br /><br />
                    </form>
                </div>'
;
}
else
{
    if( isset( 
$_POST['form_startserver'] ) )
        
StartServer$_POST['form_startserver'] );
        
    if( isset( 
$_POST['form_changepw'] ) )
        
ChangePassword($_POST['username'], $_POST['password']);
        
    
$html_output .= '
                    Du bist mit dem Account '
$_SESSION["username"] .' eingeloggt <br />
                    Account Server '
GetServerState("account") .' <form method="post"><input type="submit" name="form_startserver" value="world"></form><br/>
                    Core Server '
GetServerState("core") .' <form method="post"><input type="submit" name="form_startserver" value="core"></form><br/>
                    Certifier '
GetServerState("certifier") .' <form method="post"><input type="submit" name="form_startserver" value="certifier"></form><br/>
                    Login Server '
GetServerState("login") .' <form method="post"><input type="submit" name="form_startserver" value="login"></form><br/>
                    Cache Server '
GetServerState("cache") .' <form method="post"><input type="submit" name="form_startserver" value="cache"></form><br/>
                    World Server '
GetServerState("world") .' <form method="post"><input type="submit" name="form_startserver" value="world"></form><br/>
                    Database Server '
GetServerState("database") .' <form method="post"><input type="submit" name="form_startserver" value="database"></form><br/>
                    <br />
                    <br />
                    '
;
                    
$info GetInfos();
    
$html_output .= '
                    Accounts: '
$info[0][info] .' <br />
                    Characters: '
$info[1][info] .' <br />
                    Admins/Gms: '
$info[2][info] .' <br />
                    User Online: '
$info[3][info] .' <br />
                    Peak: '
$info[4][info] .' <br />
                    <br />
                    <br />
                    Change Password Form <br />
                    <form method="post">
                        <input type="text" maxlength="13" name="username" value=""><br /><br />
                        <input type="password" maxlength="16" name="password" value=""><br /><br />
                        <input  type="submit" name="form_changepw" value="Change"><br /><br />
                    </form>
                    '
;
}


die(
$html_output);
?>
yannickminecraft is offline  
Thanks
9 Users
Old 10/25/2011, 01:43   #2



 
Sedrika's Avatar
 
elite*gold: 18
The Black Market: 103/0/0
Join Date: Sep 2009
Posts: 20,174
Received Thanks: 14,475
Der Befehl "exec" führt die datei von dem pfad aus, wo der user es startet
In dem fall dein admin CP.
Bedeutet, dass die INI's nicht geladen werden können.

Mach Ordner wechsel noch.
Sedrika is offline  
Thanks
1 User
Old 10/25/2011, 01:45   #3
 
elite*gold: 0
Join Date: Mar 2011
Posts: 715
Received Thanks: 598
Quote:
Originally Posted by Sedrika View Post
Der Befehl "exec" führt die datei von dem pfad aus, wo der user es startet
In dem fall dein admin CP.
Bedeutet, dass die INI's nicht geladen werden können.

Mach Ordner wechsel noch.
Mir wayne wollte nur Jopsi ärgern damit.

Edit: habs kurz fixxed^^
yannickminecraft is offline  
Thanks
4 Users
Old 10/26/2011, 14:00   #4
 
Sruxs's Avatar
 
elite*gold: LOCKED
Join Date: Oct 2011
Posts: 155
Received Thanks: 30
Nett nett xD

jopsi ägern ist immer gut
Sruxs is offline  
Old 10/26/2011, 14:05   #5


 
Professor Linebeck's Avatar
 
elite*gold: 0
Join Date: Jul 2010
Posts: 1,345
Received Thanks: 1,609
Quote:
Originally Posted by yannickminecraft View Post
wollte nur Jopsi ärgern damit.
Haha so kennt man unseren Yannick. Leicht reizbar der Jung <3 :b
Professor Linebeck is offline  
Old 10/26/2011, 14:10   #6
 
elite*gold: 25
The Black Market: 134/0/1
Join Date: Apr 2009
Posts: 470
Received Thanks: 160
haha yannick xD ..... komm einfahc später icq dann kö ma reden
TechLead is offline  
Old 10/26/2011, 14:18   #7
 
elite*gold: 7
Join Date: Dec 2010
Posts: 400
Received Thanks: 218
Quote:
Originally Posted by Sruxs View Post
xD

@Apfelsuchtii
Dein bild im Spoiler [Death Note]New Kira
Sieht nice aus
Wayne? #reported


Nice Release yannick
Ping999 is offline  
Old 10/26/2011, 22:27   #8
 
elite*gold: 0
Join Date: Mar 2011
Posts: 715
Received Thanks: 598
Quote:
Originally Posted by jusay View Post
haha yannick xD ..... komm einfahc später icq dann kö ma reden
Bin grad oefters mit dem handy on aber ebuddy nimmt iwie keine icq nr. an
yannickminecraft is offline  
Reply


Similar Threads Similar Threads
[RELEASE] Simple login Script (with anti SQL inject)
10/30/2014 - Dekaron Private Server - 12 Replies
Just a simple login script, nothing fancy about it, but added with Anti SQL inject ! DO NOT USE THIS SCRIPT! if you got a error, please reply with a error code have fun ! @Mod this is not a double topic, its 2 different scripts so ... to prevent any confusion :) @Everyone THIS IS MADE FOR DEKARON SO IAM POSTING IN THE RIGHT SECTION :bandit:
[Release]Login Script mit Admin oder User weiterleitung
04/05/2012 - Flyff PServer Guides & Releases - 51 Replies
So wie das sicherlich schon viele von damned rev2 kennen gibt es dort einen login wo man ggf zu User oder Admin cp kommt hab das ganze mal für mssql gemacht und m_chLoginauthority hier ist der code <?php <?php if(isset($_POST)) {
BlackOps Serverstarter Script
02/16/2011 - Call of Duty - 2 Replies
Hey Leute ich weiß das es ein Script für BlackOps gibt das einen Server erstellen kann für ca 12 Personen. Hat das einer von euch zufällig?
WHo want me to release login script for dekaron ?
09/10/2010 - Dekaron - 3 Replies
as title says ! :rolleyes:
[Release] 2moons Auto Login Script
10/31/2008 - Dekaron Exploits, Hacks, Bots, Tools & Macros - 6 Replies
I wrote this as a quick sample to friend of how to use the PixelChecksum function of AutoIt v3. Please bear in mind that it ONLY works for 1024x768 resolution (as I was running 2Moons in a window mode while developing this proof of concept for a friend.) YOU WILL NEED TO BE RUNNING THE GAMEGUARD EMULATOR. I will possibly be developing this further if there becomes enough demand, If ANYTHING it can be rather help for you people to see howto do pixel checksums (rather than check every...



All times are GMT +1. The time now is 18:25.


Powered by vBulletin®
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2025 elitepvpers All Rights Reserved.