Jump to content

Recommended Posts

Posted (edited)

Sample for website

 

 


index.php



<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<?php
require_once("functions.php");

$action = 0;
if(isset($_POST["_type"]))
{
  $action = $_POST["_type"];
}

$page = 0;
if(isset($_GET["page"]))
{
  $page = $_GET["page"];
}


?>
<html>
<head>
  <meta http-equiv="content-type" content="text/html; charset=ISO-8859-2"/>
	<link rel="Stylesheet" type="text/css" href="css/style.css" />
	<title>Account Panel</title>
	<style>body {background-color: black;}html, body {height: 100%;margin: 0;padding: 0;}</style><!--{background:url("backround.png");background-size:100% 100%;background-repeat:no-repeat;-->
</head>
<body bgcolor="black" oncontextmenu="return false">
<center>
<br><br><br><br><br><br>
<?php

//echo '<h2><a href="'.$serverUrl.'" alt="Home">'.$serverName.'</a></h2>';

switch($action)
{
  case 1:
  {
    RequestCreateAccount();
    break;
  }
  case 2:
  {
    RequestChangePassword();
    break;
  }
  case 3:
  {
    RequestResetPassword();
    break;
  }
}

if($action == 0)
{
  switch($page)
  {
    case 0:
    {
      echo ShowMenu();
      break;
    }
    case 1:
    {
      echo ShowCreateAccount();
      break;
    }
    case 2:
    {
      echo ShowChangePassword();
      break;
    }
    case 3:
    {
      echo ShowResetPassword();
      break;
    }
  }
}

?>
<br><br><br><br>
</center>
</body>
</html>

 

functions.php



<?php
include('config.php');
//require_once('captcha.php');


// Statistics
function mssql_ex() {
	global $CONFIG;
	$mssql = mssql_connect($CONFIG['mssql_host'],$CONFIG['mssql_user'],$CONFIG['mssql_pass']) or die ('Unable to connect to server.');
	$select = mssql_select_db($CONFIG['mssql_db'], $mssql) or die ('Unable to select database.');
}

// APG Panel
class Packet
{
  private $buff = "";
  private $len = 0;
  
  public function WriteS($text)
  {
    $count = strlen($text);
    for($n=0;$n<$count;$n++)
    {
      $this->buff .= $text[$n];
    }
    $this->buff .= "\0";
    $this->len += $count + 1;
  }
  public function WriteC($value)
  {
    $this->buff .= pack('c', $value);
    $this->len += 1;
  }
  public function WriteD($value)
  {
    $this->buff .= pack('l', $value);
    $this->len += 4;
  }
  public function GetBuff()
  {
    return $this->buff;
  }
  public function GetLen()
  {
    return $this->len;
  }
  public function SendTo($sock)
  {
    if($this->len > 0)
    {
      $totalLen = 2 + $this->len;
      fwrite($sock, pack("s", $totalLen) . $this->buff);
    }
  }
};

class PacketIn
{
  private $len = 0;
  private $sock;
  public function Init($socket)
  {
    $this->sock = $socket;
    list(, $value) = unpack ( "v", fread ( $this->sock, 2 ) );
    $this->len = $value;
    if($this->len > 0)
    {
      return true;
    }
    return false;
  }
  public function GetLen()
  {
    return $this->len;
  }
  public function ReadC()
  {
    list(, $value) = unpack("c", fread($this->sock, 1));
    return $value;
  }
  public function ReadD()
  {
    list(, $value) = unpack("l", fread($this->sock, 4));
    return $value;
  }
  public function ReadS()
  {
    $str = "";
    while(!feof($this->sock))
    {
      $str .= fread($this->sock, 1);
    }
    return $str;
  }
};

function ShowCaptcha()
{
	global $captchaType;
	
  $captchaId  = '1454';
	if($captchaType == 1)
	{
		$captchaId = '1471';
	}
  $publicKey  = '27407abc-f6dc-4ec2-a960-8f97f0cde93d';
  return GetCaptcha($captchaId, $publicKey); 
}

function IsValidCaptcha()
{
  global $captchaType;
  if(isset($_POST['_type']))
  {
    $captchaId  = '1454';
    $privateKey = '22f92520-9fc1-413a-94ff-21b52d805b0a';
    if($captchaType == 1)
    {
      $captchaId = '1471';
    }
    $challengeValue = $_POST['adscaptcha_challenge_field'];
    $responseValue  = $_POST['adscaptcha_response_field'];
    $remoteAddress  = $_SERVER["REMOTE_ADDR"];

    if ("true" == ValidateCaptcha($captchaId, $privateKey, $challengeValue, $responseValue, $remoteAddress))
    {
      return TRUE;
    }
  }
  return FALSE;
}

function encrypt( $plain )
{
  $array_mul = array ( 0 => 213119, 1 => 213247, 2 => 213203, 3 => 213821 );
  $array_add = array ( 0 => 2529077, 1 => 2529089, 2 => 2529589, 3 => 2529997 );
  $dst = $key = array ( 0 => 0, 1 => 0, 2 => 0, 3 => 0, 4 => 0, 5 => 0, 6 => 0, 7 => 0, 8 => 0, 9 => 0, 10 => 0, 11 => 0, 12 => 0, 13 => 0, 14 => 0, 15 => 0 );

  for ( $i = 0; $i < strlen ( $plain ); $i++ ) {
    $dst [ $i ] = $key [ $i ] = ord ( substr ( $plain, $i, 1 ) );
  }

  for ( $i = 0; $i <= 3; $i++ ) {
    $val [ $i ] = fmod ( ( $key [ $i * 4 + 0 ] + $key [ $i * 4 + 1 ] * 0x100 + $key [ $i * 4 + 2 ] * 0x10000 + $key [ $i * 4 + 3 ] * 0x1000000 ) * $array_mul [ $i ] + $array_add [ $i ], 4294967296 );
  }

  for ( $i = 0; $i <= 3; $i++ ) {
    $key [ $i * 4 + 0 ] = $val [ $i ] & 0xff;
    $key [ $i * 4 + 1 ] = $val [ $i ] / 0x100 & 0xff;
    $key [ $i * 4 + 2 ] = $val [ $i ] / 0x10000 & 0xff;
    $key [ $i * 4 + 3 ] = $val [ $i ] / 0x1000000 & 0xff;
  }

  $dst [ 0 ] = $dst [ 0 ] ^ $key [ 0 ];
  for ( $i = 1; $i <= 15; $i++ ) {
    $dst [ $i ] = $dst [ $i ] ^ $dst [ $i - 1 ] ^ $key [ $i ];
  }

  for ( $i = 0; $i <= 15; $i++ ) {
    if ( $dst [ $i ] == 0 ) {
      $dst [ $i ] = 0x66;
    }
  }

  $encrypted = "0x";
  for ( $i = 0; $i <= 15; $i++ ) {
    if ( $dst [ $i ] < 16 ) {
      $encrypted .= "0";
    }
    $encrypted .= /*strtoupper (*/ dechex ( $dst [ $i ] ) /*)*/;
  }
  return ( $encrypted );
}

function DBGetAccountId($login)
{
  global $dbHost, $dbPort;
  $sock = fsockopen($dbHost, $dbPort) or die('Cannot connect to: '.$dbHost);
  $packet = new Packet();
  $packet->WriteC(3);
  $packet->WriteS($login);
  $packet->SendTo($sock);
  //GetReply
  $pckIn = new PacketIn();
  if($pckIn->Init($sock))
  {
      $pckIn->ReadC();  //OpCode
      $accountId = $pckIn->ReadD(); //accountId
      fclose($sock);
      return $accountId;
  }
  fclose($sock);  
  return 0;  
}

//returns accountId if succeed
//-1 - already exists
// 0 - invalid params (login,pwd,email)
//-2 - db error
function DBCreateAccount($login, $password, $email)
{
  $accountId = 0;
  global $dbHost, $dbPort;
  $sock = fsockopen($dbHost, $dbPort) or die('Cannot connect to: '.$dbHost);
  $packet = new Packet();
  $packet->WriteC(0);
  $packet->WriteS($login);
  $packet->WriteS(encrypt($password));
  $packet->WriteS($email);
  $packet->SendTo($sock);
  
  $pckIn = new PacketIn();
  if($pckIn->Init($sock))
  {
    $pckIn->ReadC();  //OpCode
    $accountId = $pckIn->ReadD();
    $message = $pckIn->ReadS();
  }  
  fclose($sock);
  return $accountId;
}

//returns accountId when succeed, 0 - invalid params (login, passwordd, email or newPassword)
//-1 - email doesnt match
//-2 - Password doesnt match
//-3 - DB Error
function DBChanePassword($login, $password, $newPassword, $email)
{
  $accountId = 0;
  global $dbHost, $dbPort;
  $sock = fsockopen($dbHost, $dbPort) or die('Cannot connect to: '.$dbHost);
  $packet = new Packet();
  $packet->WriteC(1);
  $packet->WriteS($login);
  $packet->WriteS(encrypt($password));
  $packet->WriteS($email);
  $packet->WriteS(encrypt($newPassword));
  $packet->SendTo($sock);
  
  $pckIn = new PacketIn();
  if($pckIn->Init($sock))
  {
    $pckIn->ReadC();  //OpCode
    $accountId = $pckIn->ReadD();
    $message = $pckIn->ReadS();
  }  
  fclose($sock);
  return $accountId;
}

//returns accountId if succeed
// 0 - invalid params (login, email or newPassword)
//-1 - email doesn't match
//-2 - DB Error
function DBResetPassword($login, $email, $newPassword)
{
  $accountId = 0;
  global $dbHost, $dbPort;
  $sock = fsockopen($dbHost, $dbPort) or die('Cannot connect to: '.$dbHost);
  $packet = new Packet();
  $packet->WriteC(2);
  $packet->WriteS($login);
  $packet->WriteS($email);
  $packet->WriteS($newPassword);
  $packet->WriteS(encrypt($newPassword));
  $packet->SendTo($sock);
  
  $pckIn = new PacketIn();
  if($pckIn->Init($sock))
  {
    $pckIn->ReadC();  //OpCode
    $accountId = $pckIn->ReadD();
    $message = $pckIn->ReadS();
  }  
  
  return $accountId;
}

function ShowMenu()
{
  $html = '
  <table width=550>
  <tr><td><h2>Create your account</h2><br>
      It is very important that you read the server <b><i>Rules and Terms of Use</i></b> before you register.<br1>
      Remember that you are responsible for the security of your account.<br>
      Use a valid email address to register, it will be your only security in case you lose or forget your password.<br>
  </td></tr></table>
  <br1>
	 <h4><a href="index.php?page=1" id="apmenu">Create Account</a><br>
      <a href="index.php?page=2" id="apmenu">Change Password</a><br>
      <a href="index.php?page=3" id="apmenu">Reset Password</a><br></h4>';
  return $html;
}


function ShowCreateAccount()
{
  global $captchaType;
  $html = '<h2><a href="/">Back</a></h2><br1><h2>Create Account</h2><br>
		  <form action="index.php" id="apform" method="POST" >
		<table>
		 <tr>
		  <td>
          <b>Account name</b><br>
          Please enter your account name<br>
          <input type="text" id="apinput" name="_login"><br><br>
          <b>Password</b><br>
          Please enter your password ( <a href="http://www.microsoft.com/security/online-privacy/passwords-create.aspx" target="_blank" >stronger = better</a> )<br>
          <input type="password" id="apinput" name="_password"><br><br>
          <b>Confirm password</b><br>
          <input type="password" id="apinput" name="_password2"><br><br>
          <b>Email</b><br>
          Please enter your email address<br>
          <input type="text" id="apinput" name="_email"><br><br>
          <input type="hidden" name="_type" value="1">
		  </td>
		 <td>
          <!-- <b>Captcha</b><br>';
          
 // if($captchaType == 1)
//  {
//   $html .= "Please fit the image<br>";
 // }else
 // {
 //   $html .= "Please enter the code<br>";
 // }
 // $html .= ShowCaptcha().
		$html .=	'<br><br>-->
          <input type="submit" id="apsubmit" name="_submit" value="Create">
		  </td>
		 </tr>
		</table>
		</form>';
          
  return $html;
}

function IsValidLogin($login)
{
  $loginRegex = "/^[a-z0-9A-Z0-9]{4,14}+$/";
  if(preg_match($loginRegex, $login))
  { 
    return TRUE;
  }
  return FALSE;
}

function IsValidPassword($password)
{
  $regex = "/^[a-zA-Z0-9]{4,14}+$/";
  if(preg_match($regex, $password))
  { 
    return TRUE;
  }
  return FALSE;
}

function IsValidEmail($email)
{
	$regex = "/^([a-zA-Z0-9])+([\.a-zA-Z0-9_-])*@([a-zA-Z0-9_-])+(\.[a-zA-Z0-9_-]+)*\.([a-zA-Z]{2,6})$/";
  //$regex = "/^[a-zA-Z0-9._-]+@[a-zA-Z0-9-]+\.[a-zA-Z.]{2,5}$/";
  if(preg_match($regex, $email))
  { 
    return TRUE;
  }
  return FALSE;
}

function RequestCreateAccount()
{
  $login = $_POST['_login'];
  $password = $_POST['_password'];
  $password2 = $_POST['_password2'];
  $email = $_POST['_email'];
  
  if(!IsValidLogin($login))
  {
    echo '<div style="color: red;">Invalid account name!<br>Please try again.</div>';
    echo ShowCreateAccount();
    return FALSE;
  }
  //if(!IsValidPassword($password))
  //{
  //  echo '<div style="color: red;">Invalid password!<br>Please try again.</div>';
  //  echo ShowCreateAccount();
 //   return FALSE;
 // }
  //if(!IsValidEmail($email))
  //{
 //   echo '<div style="color: red;">Invalid email!<br>Please try again.</div>';
 //   echo ShowCreateAccount();
 //   return FALSE;
 // }
  if($password != $password2)
  {
    echo '<div style="color: red;">Confirmed password doesn\'t match!<br>Please try again.</div>';
    echo ShowCreateAccount();
    return FALSE;
  }
  
  //if(!IsValidCaptcha())
 // {
 //   echo '<div style="color: red;">Captcha doesn\'t match!<br>Please try again.</div>';
  //  echo ShowCreateAccount();
 //   return FALSE;
 // }
  
  $accountId = DBCreateAccount($login, $password, $email);
  if($accountId > 0)
  {
    echo '<h2>Account has been created!</h2><br>';
    return TRUE;
  }else if($accountId == -1)
  {
    echo '<div style="color: red;">Account already exists!<br>Please try again.</div>';
    echo ShowCreateAccount();
    return FALSE;
  }else
  {
    echo '<div style="color: red;">Database Error!<br>Please try again later.</div>';
    return FALSE;
  }
}

function ShowChangePassword()
{
  global $captchaType;
  $html = '<h2><a href="/">Back</a></h2><br1><h2>Change Password</h2><br>
		  <form action="index.php" id="apform" method="POST" >
		<table>
		 <tr>
		  <td>
          <b>Account name</b><br>
          Please enter your account name,<br> alphanumeric characters (a-Z, 0-9)<br>
          <input type="text" id="apinput" name="_login"><br><br>
          <b>Old password</b><br>
          Please enter your old password<br>
          <input type="password" id="apinput" name="_oldpassword"><br><br>
          <b>New password</b><br>
          Please enter your new password ( <a href="http://www.microsoft.com/security/online-privacy/passwords-create.aspx" target="_blank" >stronger = better</a> )<br>
          <input type="password" id="apinput" name="_newpassword"><br><br>
          <b>Confirm new password</b><br>
          Please enter your new password again<br>
          <input type="password" id="apinput" name="_newpassword2"><br><br>
          <b>Email</b><br>
          Please enter your email address<br>
          <input type="text" id="apinput" name="_email"><br><br>
          <input type="hidden" name="_type" value="2">
		  </td>
		  <td>
         <!-- <b>Captcha</b><br>';
          
 // if($captchaType == 1)
 // {
 //   $html .= "Please fit the image<br>";
 // }else
 // {
 //   $html .= "Please enter the code<br>";
//  }
//  $html .= ShowCaptcha().
  $html .='<br><br>-->
          <input type="submit" id="apsubmit" name="_submit" value="Change">
          </td>
		 </tr>
		</table>
		  </form>';
          
  return $html;
}

function RequestChangePassword()
{
  $login = $_POST['_login'];
  $oldpassword = $_POST['_oldpassword'];
  $newpassword = $_POST['_newpassword'];
  $newpassword2 = $_POST['_newpassword2'];
  $email = $_POST['_email'];
  
  if(!IsValidLogin($login))
  {
    echo '<div style="color: red;">Invalid account name!<br>Please try again.</div>';
    echo ShowChangePassword();
    return FALSE;
  }
  if(!IsValidPassword($oldpassword))
  {
    echo '<div style="color: red;">Invalid old password!<br>Please try again.</div>';
    echo ShowChangePassword();
    return FALSE;
  }
  if(!IsValidPassword($newpassword))
  {
    echo '<div style="color: red;">Invalid new password!<br>Please try again.</div>';
    echo ShowChangePassword();
    return FALSE;
  }
  if(!IsValidEmail($email))
  {
    echo '<div style="color: red;">Invalid email!<br>Please try again.</div>';
    echo ShowChangePassword();
    return FALSE;
  }
  if($newpassword != $newpassword2)
  {
    echo '<div style="color: red;">Confirmed password doesn\'t match!<br>Please try again.</div>';
    echo ShowChangePassword();
    return FALSE;
  }
  
//  if(!IsValidCaptcha())
 // {
 //   echo '<div style="color: red;">Captcha doesn\'t match!<br>Please try again.</div>';
 //   echo ShowChangePassword();
 //   return FALSE;
 // }
  
  $accountId = DBGetAccountId($login);
  if($accountId <= 0)
  {
    echo '<div style="color: red;">Account doesn\'t exist!<br>Please try again.</div>';
    echo ShowChangePassword();
    return FALSE;
  }
  
  $accountId = DBChanePassword($login, $oldpassword, $newpassword, $email);
  if($accountId > 0)
  {
    echo '<h2>Password has been changed!</h2><br>';
    return TRUE;
  }else if($accountId == -1)
  {
    echo '<div style="color: red;">Email doesn\'t match!<br>Please try again.</div>';
    echo ShowChangePassword();
    return FALSE;
  }else if($accountId == -2)
  {
    echo '<div style="color: red;">Password doesn\'t match!<br>Please try again.</div>';
    echo ShowChangePassword();
    return FALSE;
  }else
  {
    echo '<div style="color: red;">Database Error!<br>Please try again later.</div>'.$accountId;
    return FALSE;
  }
}

function GeneratePassword()
{
  $length = 8;

  list($usec, $sec) = explode(' ', microtime());
  $seed = (float) $sec + ((float) $usec * 100000);
  srand($seed); 
  $alfa = "1234567890qwertyuiopasdfghjklzxcvbnmQWERTYUIOPASDFGHJKLZXCVBNM";
  $password = "";
  for($i = 0; $i < $length; $i ++)
  {
    $password .= $alfa[rand(0, strlen($alfa))];
  }
  
  return $password;
}

function ShowResetPassword()
{
  global $captchaType;
  $html = '<h2><a href="/">Back</a></h2><br1><h2>Reset Password</h2><br>
          <form action="index.php" id="apform" method="POST" >
		<table>
		 <tr>
		  <td>
          <b>Account name</b><br>
          Please enter your account name<br>
          <input type="text" id="apinput" name="_login"><br><br>
          Please enter your email address<br>
          <input type="text" id="apinput" name="_email"><br><br>
          <input type="hidden" name="_type" value="3">
		  </td>
		 <td>
          <!-- <b>Captcha</b><br>';
          
 // if($captchaType == 1)
 // {
 //   $html .= "Please fit the image<br>";
 // }else
 // {
 //   $html .= "Please enter the code<br>";
 // }
 // $html .= ShowCaptcha().
 $html .='<br><br>-->
          <input type="submit" id="apsubmit" name="_submit" value="Reset">
          </td>
		 </tr>
		</table>
		  </form>';
          
  return $html;
}

function RequestResetPassword()
{
  $login = $_POST['_login'];
  $email = $_POST['_email'];
  
  if(!IsValidLogin($login))
  {
    echo '<div style="color: red;">Invalid account name!<br>Please try again.</div>';
    echo ShowResetPassword();
    return FALSE;
  }
  if(!IsValidEmail($email))
  {
    echo '<div style="color: red;">Invalid email!<br>Please try again.</div>';
    echo ShowResetPassword();
    return FALSE;
  }
  
 // if(!IsValidCaptcha())
 // {
 //   echo '<div style="color: red;">Captcha doesn\'t match!<br>Please try again.</div>';
 //   echo ShowResetPassword();
 //   return FALSE;
 // }
  
  $accountId = DBGetAccountId($login);
  if($accountId <= 0)
  {
    echo '<div style="color: red;">Account doesn\'t exist!<br>Please try again.</div>';
    echo ShowResetPassword();
    return FALSE;
  }
  
  $newPassword = GeneratePassword();
  $accountId = DBResetPassword($login, $email, $newPassword);
  if($accountId > 0)
  {
    echo '<h2>Password has been resetted!<br>Please check your email to see details.</h2><br><h2><a href="/">Back</a></h2>';
    return TRUE;
  }else if($accountId == -1)
  {
    echo '<div style="color: red;">Email doesn\'t match!<br>Please try again.</div>';
    echo ShowResetPassword();
    return FALSE;
  }else
  {
    echo '<div style="color: red;">Database Error('.$accountId.')!<br>Please try again later.</div>';
    return FALSE;
  }
}
?>


 

config.php



<?php

$CONFIG['mssql_host'] = 'TITANAS293\SQLEXPRESS';
$CONFIG['mssql_user'] = 'sa';
$CONFIG['mssql_pass'] = '';
$CONFIG['mssql_db'] = 'lin2world';
$CONFIG['mssql_db2'] = 'lin2db';

// APG Panel
$serverName="L2server";  //Change it to your server name
$serverUrl="http://server.net/"; //Change it to your server website url
$dbHost = "TITANAS293";  //APGateway IP
$dbPort = 1224; //APGateway Port
$captchaType=0; //Captcha Type 1 - Slide , 0 - Text
?>


 

captcha.php (not working just sharing it fully)
 



<?php
$ADSCAPTCHA_API = 'api.adscaptcha.com';
	
function GetCaptcha($captchaId, $publicKey) {
	global $ADSCAPTCHA_API;

	$dummy = rand(1, 9999999999);
	$urlGet = 'http://' . $ADSCAPTCHA_API . "/Get.aspx";
	$urlNoScript = 'http://' . $ADSCAPTCHA_API . "/NoScript.aspx";
	$params = "?CaptchaId="  . $captchaId . 
			  "&PublicKey=" . $publicKey . 
			  "&Dummy=" . $dummy;
	
	$result  = "<script src='" . $urlGet . $params . "' type='text/javascript'></script>\n";
	$result .= "<noscript>\n";
	$result .= "\t<iframe src='" . $urlNoScript . $params . "' width='300' height='100' frameborder='0'></iframe>\n";
	$result .= "\t<table>\n";
	$result .= "\t<tr><td>Type challenge here:</td><td><input type='text' name='adscaptcha_response_field' value='' /></td></tr>\n";
	$result .= "\t<tr><td>Paste code here:</td><td><input type='text' name='adscaptcha_challenge_field' value='' /></td></tr>\n";
	$result .= "\t</table>\n";
	$result .= "</noscript>\n";
	
	return $result;
}

function ValidateCaptcha($captchaId, $privateKey, $challengeValue, $responseValue, $remoteAddress) {
	global $ADSCAPTCHA_API;

	$host = $ADSCAPTCHA_API; 
	$path = "/Validate.aspx";
	
	$params = "CaptchaId=" . $captchaId . "&PrivateKey=" . $privateKey . "&ChallengeCode=" . $challengeValue . "&UserResponse=" . $responseValue . "&RemoteAddress=" . $remoteAddress;
		
	$result = HttpPost($host, $path, $params);

	return $result;
}

function FixEncoding($str) { 	
	$curr_encoding = mb_detect_encoding($str) ; 
	
	if($curr_encoding == "UTF-8" && mb_check_encoding($str,"UTF-8")) {
		return $str; 
	} else {
		return utf8_encode($str); 
	}
}

function HttpPost($host, $path, $data, $port = 80) {
	$data = FixEncoding($data);
	
	$http_request  = "POST $path HTTP/1.0\r\n";
	$http_request .= "Host: $host\r\n";
	$http_request .= "Content-Type: application/x-www-form-urlencoded\r\n";
	$http_request .= "Content-Length: " . strlen($data) . "\r\n";
	$http_request .= "\r\n";
	$http_request .= $data;

	$response = '';
	if (($fs = @fsockopen($host, $port, $errno, $errstr, 10)) == false) {
		die ('Could not open socket! ' . $errstr);
	}
	
	fwrite($fs, $http_request);

	while (!feof($fs))
		$response .= fgets($fs, 1160);
	fclose($fs);
	
	$response = explode("\r\n\r\n", $response, 2);
	return $response[1];
}
?>

 

 

https://mega.nz/#!X8ISTQzL!6i0TKt0nSx1UMgUTFdIQcM_wkZTe4gA_jbkLpyhQqqw

APGateway server
 

WARNING: code is old, its using OLD PHP and deprecated codes everywhere, its not safe it has not even the basic protections, its just shared as sample and/or for testing purposes.

 

if you want real account manager for vanganth files with auto donate payments go here https://shop.denart-designs.com/

Edited by Nightw0lf
  • Like 1

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



  • Posts

    • Opening December 6th at 19:00 (GMT +3)! Open Beta Test from November 30th!   https://l2soe.com/   🌟 Introducing L2 Saga of Eternia: A Revolution in Lineage 2 High Five! 🌟   Dear Lineage 2 enthusiasts, Prepare to witness the future of private servers! L2 Saga of Eternia is not just another High Five project—it’s a game-changing experience designed to compete with the giants of the Lineage 2 private server scene. Built for the community, by the community, we’re here to raise the bar in quality, innovation, and longevity. What Sets Us Apart? 💎 No Wipes, Ever Say goodbye to the fear of losing your progress. Our server is built to last and will never close. Stability and consistency are our promises to you. ⚔️ Weekly New Content Our dedicated development team ensures fresh challenges, events, and updates every week. From custom quests to exclusive features, there will always be something exciting to explore. 💰 No Pay-to-Win Skill and strategy matter most here. Enjoy a balanced gameplay environment where your achievements come from effort, not your wallet. 🌍 A Massive Community With 2000+ players expected, join a vibrant and active community of like-minded adventurers ready to conquer the world of Aden. 🏆 Fair and Competitive Gameplay Our systems are designed to promote healthy competition while avoiding abusive mechanics and exploits. 🔧 Professional Development From advanced bug fixes to carefully curated content, we pride ourselves on smooth performance, no lag, and unparalleled server quality. Key Features Chronicle: High Five with unique interface Rate: Dynamic x10 rates Class Balance: Carefully fine-tuned for a fair experience PvP Focused: PvP Ranking & aura display effect for 3 Top PvPers every week Custom Events: Seasonal and permanent events to keep you engaged Additional Features:   Custom Endgame Content: Introduce unique dungeons, raids, or zones unavailable in other servers. Player-Driven Economy: Implement a strong market system and avoid overinflated drops or rewards. Epic Siege Battles: Announce special large-scale sieges and PvP events. Incentives for Streamers and Clans: Attract influencers and big clans to boost server publicity. Roadmap Transparency: Share a public roadmap of planned updates to build trust and excitemen   Here you can read all the features: https://l2soe.com/features   Video preview: Join the Revolution! This is your chance to be part of something legendary. L2 Saga of Eternia is not just a server; it’s a movement to redefine what Lineage 2 can be. Whether you’re a seasoned veteran or a newcomer to the world of Aden, we invite you to experience Lineage 2 at its finest.   Official Launch Date: December 6th 2024 Website: https://l2soe.com/ Facebook: https://www.facebook.com/l2soe Discord: https://discord.com/invite/l2eternia   Let’s build the ultimate Lineage 2 experience together. See you in-game! 🎮
    • That's like a tutorial on how to run l2 on MacOS Xd but good job for the investigation. 
    • small update: dc robe set sold   wts adena 1kk = 1.5$ 
    • DISCORD : utchiha_market telegram : https://t.me/utchiha_market SELLIX STORE : https://utchihamkt.mysellix.io/ Join our server for more products : https://discord.gg/hood-services https://campsite.bio/utchihaamkt
    • Why adena in this sever so expensive 🙂
  • Topics

×
×
  • Create New...