Рейтинг темы:
  • 0 Голос(ов) - 0 в среднем
  • 1
  • 2
  • 3
  • 4
  • 5
MSSQL Запрос PTS Server!
#1
Приветствую всех жителей этого форума! Прошу помочь с решением проблемы.

Знающие люди подскажите как подкорректировать SQL запрос регистрации аккаунта с JAVA на PTS [Изображение: 08.gif]

Вот рабочий SQL запрос регистрации аккаунта для JAVA сервера (MySql)

PHP код:
<?php
// no direct access
defined('_JEXEC') or die('Restricted access');

jimport('joomla.application.component.model');
JTable::addIncludePath( JPATH_COMPONENT . DS . 'tables' );

class
JusersModelJregister extends JModel {
private
$_UserID, $_jAccounts;

// Constructor
function __construct() {
parent::__construct();
}
// Get User ID
public function _UserID() {
$user =& JFactory::getUser();
// if User not Guest
if (!$user->guest) {
$this->_UserID = $user->id;
return
$this->_UserID;
// if User Guest
} else {
return
false;
}
}
// Get accounts
public function getjAccounts() {
if (empty(
$this->_jAccounts))
{
$db = &$this->getDBO();
$UserID = $this->_UserID();
$query = 'SELECT * FROM '.$db->nameQuote('#__jaccounts').' WHERE `user_id`= '.$UserID;
$db->setQuery($query);
$this->_jAccounts = $db->loadObjectList();

return
$this->_jAccounts;
}
}
// Get count user acc
public function getjUserCountAcc() {
if (empty(
$this->_jUserCountAcc))
{
$db = &$this->getDBO();
$UserID = $this->_UserID();
$query = 'SELECT COUNT(*) FROM '.$db->nameQuote('#__jaccounts').' WHERE `user_id`= '.$UserID;
$db->setQuery($query);
$this->_jUserCountAcc = $db->loadResult();

return
$this->_jUserCountAcc;
}
}
// EOF

//
public function save($post) {
global
$mainframe;
$table = &$this->getTable();
//// Input Data ////
$jLogin = $post ['login'];
$jPassword = $post ['password'];
$jPassword1 = $post['password1'];
$jEmail = $post ['email'];
$jComments = $post['comments'];
$jPattern = '[^a-z,^A-Z,^0-9]';
$jDB = &JFactory::getJDbo();
$DB = &JFactory::getDBO();
//// Check Empty Input Data ////
//// Check Empty Login ////
if (empty($jLogin)) {
JError::raiseNotice( '', 'JREGISTRATION_EMPTY_LOGIN' );
return
false;
}
//// Check Empty Password ////
if (empty($jPassword)) {
JError::raiseNotice( '', 'JREGISTRATION_EMPTY_PASS' );
return
false;
}
//// Check Empty Password ////
if (empty($jPassword1)) {
JError::raiseNotice( '', 'JREGISTRATION_EMPTY_PASS1' );
return
false;
}
/// Check reEnter Password ///
if ($jPassword <> $jPassword1) {
JError::raiseNotice( '', 'JREGISTRATION_NOT_PASS2' );
return
false;
}
//// Check Special Symbols in Input Data ////
/* if (preg_match($jPattern, $jLogin)) {
JError::raiseNotice( '', 'J INCORRECT SYMBOLS LOGIN' );
return false;
}
if (preg_match($jPattern, $jPassword)) {
JError::raiseNotice( '', 'J INCORRECT SYMBOLS PASS' );
return false;
}*/
//// Check Login in DB ////
if ($jLogin) {
//// Server DB ////
$querys = 'SELECT count(`login`) FROM #__accounts WHERE login = '.$jDB->Quote($jLogin);
$jDB->setQuery($querys);
if (
$jDB->loadResult()) {
JError::raiseNotice( '', 'JREGISTRATION_ALREADY_REGISTRED_ON_SERVER' );
return
false; /// STOP if Login in use ///
} else {
//// Joomla DB ////
$query = 'SELECT count(`login`) FROM #__jaccounts WHERE `login`= '.$db->Quote($jLogin);
$db->setQuery($query);
if (
$db->loadResult()) {
JError::raiseNotice( '', 'JREGISTRATION_ALREADY_REGISTRED' );
return
false; /// STOP if Login in use ///
}
/// IF LOGIN NOT IN USE in Joomla DB and Server DB ///
/// WRITE DATA in Server DB ///
$jPassCode = base64_encode(pack('H*', sha1($jPassword)));
$query = 'INSERT INTO accounts (login, password, access_level)
VALUES ('
.$jDB->Quote($post ['login']).', '.$jDB->Quote($jPassCode).', 0)';
$jDB->setQuery($query);
if (!
$jDB->query()) { /// STOP if error ///
JError::raiseError( 500, $jDB->stderr() );
return
false;
}
}
}
// привязываем поля формы к таблице
if (!$table->bind($post)) {
$this->setError($table->getError());
return
false;
}
// проверяем данные
if ($table->check($post)) {
if (!
$table->store($post)) {
$this->setError($table->getError());
return
false;
}
} else {
$this->setError($table->getError());
return
false;
}
return
true;
}
}
?>

Где:

$jDB - база MSSQL сервера
$DB- база MySql сайта

Нужно поправить запрос для регистрации аккаунта в базы данных lin2db MSSQL таблице user_auth

[Изображение: 05.gif]
[Изображение: Z.png][Изображение: S.gif]
Ответ
#2
Запросы
Код:
INSERT INTO dbo.user_auth(account,password,quiz1,quiz2,answer1,answer2) VALUES ('$login', $cr_password, '$question', '', $cr_answer, $cr_answer)
INSERT INTO dbo.ssn(ssn,name,email,job,phone,zip,addr_main,addr_etc,account_num) VALUES ('$ssn','$login','$mail',0,'telphone','123456','','',1)
INSERT INTO dbo.user_account(account, pay_stat) VALUES ('$login', 1)
INSERT INTO dbo.user_info(account,ssn,kind) VALUES ('$login','$ssn', 99);

Редактировать тут
PHP код:
<?php 
/// IF LOGIN NOT IN USE in Joomla DB and Server DB ///
/// WRITE DATA in Server DB ///
$jPassCode = base64_encode(pack('H*', sha1($jPassword)));
$query = 'INSERT INTO accounts (login, password, access_level)
VALUES ('
.$jDB->Quote($post ['login']).', '.$jDB->Quote($jPassCode).', 0)';
Ответ
#3
Apoloser Написал:Запросы
Код:
INSERT INTO dbo.user_auth(account,password,quiz1,quiz2,answer1,answer2) VALUES ('$login', $cr_password, '$question', '', $cr_answer, $cr_answer)
А можно увидеть вот это значение - $cr_password?
Как я поняла это шифрация пароля [Изображение: 06.gif]
[Изображение: Z.png][Изображение: S.gif]
Ответ
#4
Krasavella Написал:А можно увидеть вот это значение - $cr_password?
Как я поняла это шифрация пароля [Изображение: 06.gif]
PHP код:
<?php 
public function encrypt( $str )
{
$key = array();
$dst = array();

$i = 0;

// $nBytes = strlen($str); // it was default setting order by count strlen($str)
$nBytes = 16;
while (
$i < $nBytes)
{
$i++;
$key[$i] = ord(substr($str, $i - 1, 1));
$dst[$i] = $key[$i];

}

$rslt = $key[1] + $key[2]*256 + $key[3]*65536 + $key[4]*16777216;
$one = $rslt * 213119 + 2529077;
$one = $one - intval($one/ 4294967296) * 4294967296;

$rslt = $key[5] + $key[6]*256 + $key[7]*65536 + $key[8]*16777216;
$two = $rslt * 213247 + 2529089;
$two = $two - intval($two/ 4294967296) * 4294967296;

$rslt = $key[9] + $key[10]*256 + $key[11]*65536 + $key[12]*16777216;
$three = $rslt * 213203 + 2529589;
$three = $three - intval($three/ 4294967296) * 4294967296;

$rslt = $key[13] + $key[14]*256 + $key[15]*65536 + $key[16]*16777216;
$four = $rslt * 213821 + 2529997;
$four = $four - intval($four/ 4294967296) * 4294967296;

$key[4] = intval($one/16777216);
$key[3] = intval(($one - $key[4] * 16777216) / 65535);
$key[2] = intval(($one - $key[4] * 16777216 - $key[3] * 65536) / 256);
$key[1] = intval(($one - $key[4] * 16777216 - $key[3] * 65536 - $key[2] * 256));

$key[8] = intval($two/16777216);
$key[7] = intval(($two - $key[8] * 16777216) / 65535);
$key[6] = intval(($two - $key[8] * 16777216 - $key[7] * 65536) / 256);
$key[5] = intval(($two - $key[8] * 16777216 - $key[7] * 65536 - $key[6] * 256));

$key[12] = intval($three/16777216);
$key[11] = intval(($three - $key[12] * 16777216) / 65535);
$key[10] = intval(($three - $key[12] * 16777216 - $key[11] * 65536) / 256);
$key[9] = intval(($three - $key[12] * 16777216 - $key[11] * 65536 - $key[10] * 256));

$key[16] = intval($four/16777216);
$key[15] = intval(($four - $key[16] * 16777216) / 65535);
$key[14] = intval(($four - $key[16] * 16777216 - $key[15] * 65536) / 256);
$key[13] = intval(($four - $key[16] * 16777216 - $key[15] * 65536 - $key[14] * 256));

$dst[1] = $dst[1] ^ $key[1];

$i=1;
while (
$i<16)
{
$i++;
$dst[$i] = $dst[$i] ^ $dst[$i-1] ^ $key[$i]; // here error
}
$i=0;
while (
$i<16)
{
$i++;
if (
$dst[$i] == 0)
{
$dst[$i] = 102;
}
}
$encrypt = "0x";
$i=0;
while (
$i<16)
{
$i++;
if (
$dst[$i] < 16)
{
$encrypt = $encrypt . "0" . dechex($dst[$i]);
}
else
{
$encrypt = $encrypt . dechex($dst[$i]);
}
}

return
$encrypt;
}
$cr_password = $function->encrypt($password);
Ответ
#5
delete///////
Ответ
#6
Apoloser Написал:
PHP код:
<?php 
public function encrypt( $str )

Что то не регистрирует [Изображение: 11.gif]

Редирект на стартовую страницу, и ошибок не показывает, что нужно прописать чтобы показало ошибку без редиректа?
[Изображение: Z.png][Изображение: S.gif]
Ответ
#7
Krasavella Написал:Что то не регистрирует [Изображение: 11.gif]

Редирект на стартовую страницу, и ошибок не показывает, что нужно прописать чтобы показало ошибку без редиректа?
Ну я не ванга :Olen':
попробовать error_reporting(E_ALL); как вариант Big Grin
Ответ
#8
Apoloser Написал:Ну я не ванга :Olen':
попробовать error_reporting(E_ALL); как вариант Big Grin

Ничего не получается.

Готова заплатить 15$, кто привидёт регистрацию в рабочий вид [Изображение: 25.gif]
[Изображение: Z.png][Изображение: S.gif]
Ответ
#9
Как я понял писать под джумлу. Джумла бяка
Ответ
#10
Apoloser Написал:Как я понял писать под джумлу. Джумла бяка

Регистрация написана, работает под JAVA сервер, аккаунты регистрирует без проблем [Изображение: 12.gif]

Для PTS не могу переделать [Изображение: 06.gif]

Плачу 15$, кто привидёт регистрацию в рабочий вид для PTS сервера [Изображение: 25.gif]
[Изображение: Z.png][Изображение: S.gif]
Ответ


Возможно похожие темы ...
Тема Автор Ответы Просмотры Последний пост
  L2j c3 server 2024 by L2jBayev ver1.4 AlexBayev 4 478 10-28-2024, 06:58 AM
Последний пост: johnhartman
Information L2j c2 server 2024 by L2jBayev ver0.2.0 AlexBayev 1 261 09-06-2024, 11:12 PM
Последний пост: AlexBayev
  L2j c3 server 2024 by L2jBayev ver1.5.0 AlexBayev 0 359 08-10-2024, 04:25 PM
Последний пост: AlexBayev
  L2 SERVER C1 SINNA 2011 by smeli smeli 413 152,102 02-15-2024, 02:22 PM
Последний пост: smeli2023
  Не запускается Game Server Console Lovec 1 1,336 12-04-2021, 12:48 AM
Последний пост: Lovec
  Interlude Test Server. yoqoyoqo 4 1,671 03-11-2021, 11:57 PM
Последний пост: krisadr
  Kamael Client - Interlude Server Katia666 3 2,584 11-03-2020, 10:51 AM
Последний пост: FaintSmile
  При запуске game server на сайте (sw13) ошибка mysql 0 AndreDeiu 1 1,357 09-27-2020, 11:32 PM
Последний пост: Lord_Gothic
  вопрос по поводу Server RT Lineage 2 C5 rev. 1269 ATOM 21 8,738 04-16-2020, 02:40 PM
Последний пост: Fenharell
  запрос sql. добавить предмет в дроп мобам по уровню sheg300 2 1,931 06-17-2018, 09:48 PM
Последний пост: PROGRAMMATOR

Перейти к форуму:


Пользователи, просматривающие эту тему: 1 Гость(ей)