RifleMaN_
07/08/2019, 01:35 AM
Estou tentando colocar uma opcao para bloquear os itens com a coluna CtlCode da tabela Character, estou utilizando o código de outra função do site pra isso. Dessa página:
2140
A função dessa pagina é essa:
private function loadOptionsModifyData()
{
global $ldTpl;
switch($_GET['Write'])
{
case 1:
if(empty($_POST['userName']) == true) $tempRepost .= "<div class='qdestaques2'>".LDPU_MODIFY_DATA_FILL_NAME."</div>";
elseif(empty($_POST['userTel']) == true) $tempRepost .= "<div class='qdestaques2'>".LDPU_MODIFY_DATA_FILL_PHONE."</div>";
elseif(strlen($_POST['userName']) > 10) $tempRepost .= "<div class='qdestaques2'>".LDPU_MODIFY_DATA_INVALID_SIZE_NAME."</div>";
elseif(strlen($_POST['userTel']) > 15) $tempRepost .= "<div class='qdestaques2'>".LDPU_MODIFY_DATA_INVALID_SIZE_PHONE."</div>";
else {
if($this->query("UPDATE ".DATABASE_ACCOUNTS.".dbo.MEMB_INFO SET memb_name = '". $_POST['userName'] ."', tel__numb = '". $_POST['userTel'] ."' WHERE memb___id='". $_SESSION['LOGIN'] ."'"))
{
$tempRepost .= "<div class='qdestaques2'>".LDPU_MODIFY_DATA_SUCCESS_ALTER."</div>";
$this->writeLog(1, $_SESSION['LOGIN'], "", "");
}
else
$tempRepost .= "<div class='qdestaques'>".LDPU_MODIFY_DATA_ERROR_ALTER."</div>";
}
break;
case 2:
$Search_data_q = $this->query("SELECT fpas_answ FROM ".DATABASE_ACCOUNTS.".dbo.MEMB_INFO WHERE memb___id='". $_SESSION['LOGIN'] ."'");
$Search_data_q = mssql_fetch_object($Search_data_q);
$checkPwdQ = $this->query('exec dbo.webVerifyLogin "'. $_SESSION['LOGIN'] .'","'. $_POST['userPwd'] .'","'. USE_MD5 .'"');
$checkPwd = mssql_fetch_row($checkPwdQ);
if(empty($_POST['userPwd']) == true) $tempRepost .= "<div class='qdestaques2'>".LDPU_MODIFY_DATA_FILL_PASSWORD."</div>";
elseif(empty($_POST['userPwdNew']) == true || empty($_POST['userPwdNewRe']) == true) $tempRepost .= "<div class='qdestaques2'>".LDPU_MODIFY_DATA_FILL_NEW_PASSWORD."</div>";
elseif(empty($_POST['userAnswer']) == true) $tempRepost .= "<div class='qdestaques2'>".LDPU_MODIFY_DATA_FILL_SECRET_ANSWER."</div>";
elseif(strlen($_POST['userPwdNew']) > 10 || strlen($_POST['userPwdNewRe']) > 10) $tempRepost .= "<div class='qdestaques2'>".LDPU_MODIFY_DATA_INVALID_SIZE_PASSWORD."</div>";
elseif($_POST['userPwdNew'] <> $_POST['userPwdNewRe']) $tempRepost .= "<div class='qdestaques2'>".LDPU_MODIFY_DATA_PASSWORDS_MUST_BE_IDENTICAL."</div>";
elseif($_POST['userAnswer'] <> $Search_data_q->fpas_answ) $tempRepost .= "<div class='qdestaques2'>".LDPU_MODIFY_DATA_INVALID_SECRET_ANSWER."</div>";
elseif($checkPwd[0] == 0) $tempRepost .= "<div class='qdestaques2'>".LDPU_MODIFY_DATA_INVALID_PASSWORD."</div>";
else {
if(USE_MD5 == false) $result = $this->query("UPDATE ".DATABASE_ACCOUNTS.".dbo.MEMB_INFO SET memb__pwd = '". $_POST['userPwdNew'] ."' WHERE memb___id='". $_SESSION['LOGIN'] ."'");
if(USE_MD5 == true) $result = $this->query("exec dbo.webPwdHashWrite '". $_SESSION['LOGIN'] ."', '". $_POST['userPwdNew'] ."'");
if($result)
{
$tempRepost .= "<div class='qdestaques2'>".LDPU_MODIFY_DATA_SUCCESS_ALTER."</div>";
$this->writeLog(1, $_SESSION['LOGIN'], "", LDPU_MODIFY_DATA_LOG_PASSWORD_ALTER);
}
else
$tempRepost .= "<div class='qdestaques'>".LDPU_MODIFY_DATA_ERROR_ALTER.".</div>";
}
break;
}
$ldTpl->set("RespostWrite", $tempRepost);
$SQL_Q = $this->query("SELECT tel__numb,mail_addr,fpas_ques FROM ".DATABASE_ACCOUNTS.".dbo.MEMB_INFO WHERE memb___id='". $_SESSION['LOGIN'] ."'");
$SQL = mssql_fetch_object($SQL_Q);
$ldTpl->set("TEL__NUMB", $SQL->tel__numb);
$ldTpl->set("MAIL_ADDR", $SQL->mail_addr);
$ldTpl->set("USER_FQUEST", $SQL->fpas_ques);
}
Queria deixar só o código responsável pela segunda parte, onde pede para responder a pergunta secreta pra conseguir mudar.
Só que retirando o sistema de senha, colocando só para mudar o CtlCode para 2
update Character set CtlCode = 2 where AccountId = 'minhaconta'
Alguem consegue ajudar fazer ?
2140
A função dessa pagina é essa:
private function loadOptionsModifyData()
{
global $ldTpl;
switch($_GET['Write'])
{
case 1:
if(empty($_POST['userName']) == true) $tempRepost .= "<div class='qdestaques2'>".LDPU_MODIFY_DATA_FILL_NAME."</div>";
elseif(empty($_POST['userTel']) == true) $tempRepost .= "<div class='qdestaques2'>".LDPU_MODIFY_DATA_FILL_PHONE."</div>";
elseif(strlen($_POST['userName']) > 10) $tempRepost .= "<div class='qdestaques2'>".LDPU_MODIFY_DATA_INVALID_SIZE_NAME."</div>";
elseif(strlen($_POST['userTel']) > 15) $tempRepost .= "<div class='qdestaques2'>".LDPU_MODIFY_DATA_INVALID_SIZE_PHONE."</div>";
else {
if($this->query("UPDATE ".DATABASE_ACCOUNTS.".dbo.MEMB_INFO SET memb_name = '". $_POST['userName'] ."', tel__numb = '". $_POST['userTel'] ."' WHERE memb___id='". $_SESSION['LOGIN'] ."'"))
{
$tempRepost .= "<div class='qdestaques2'>".LDPU_MODIFY_DATA_SUCCESS_ALTER."</div>";
$this->writeLog(1, $_SESSION['LOGIN'], "", "");
}
else
$tempRepost .= "<div class='qdestaques'>".LDPU_MODIFY_DATA_ERROR_ALTER."</div>";
}
break;
case 2:
$Search_data_q = $this->query("SELECT fpas_answ FROM ".DATABASE_ACCOUNTS.".dbo.MEMB_INFO WHERE memb___id='". $_SESSION['LOGIN'] ."'");
$Search_data_q = mssql_fetch_object($Search_data_q);
$checkPwdQ = $this->query('exec dbo.webVerifyLogin "'. $_SESSION['LOGIN'] .'","'. $_POST['userPwd'] .'","'. USE_MD5 .'"');
$checkPwd = mssql_fetch_row($checkPwdQ);
if(empty($_POST['userPwd']) == true) $tempRepost .= "<div class='qdestaques2'>".LDPU_MODIFY_DATA_FILL_PASSWORD."</div>";
elseif(empty($_POST['userPwdNew']) == true || empty($_POST['userPwdNewRe']) == true) $tempRepost .= "<div class='qdestaques2'>".LDPU_MODIFY_DATA_FILL_NEW_PASSWORD."</div>";
elseif(empty($_POST['userAnswer']) == true) $tempRepost .= "<div class='qdestaques2'>".LDPU_MODIFY_DATA_FILL_SECRET_ANSWER."</div>";
elseif(strlen($_POST['userPwdNew']) > 10 || strlen($_POST['userPwdNewRe']) > 10) $tempRepost .= "<div class='qdestaques2'>".LDPU_MODIFY_DATA_INVALID_SIZE_PASSWORD."</div>";
elseif($_POST['userPwdNew'] <> $_POST['userPwdNewRe']) $tempRepost .= "<div class='qdestaques2'>".LDPU_MODIFY_DATA_PASSWORDS_MUST_BE_IDENTICAL."</div>";
elseif($_POST['userAnswer'] <> $Search_data_q->fpas_answ) $tempRepost .= "<div class='qdestaques2'>".LDPU_MODIFY_DATA_INVALID_SECRET_ANSWER."</div>";
elseif($checkPwd[0] == 0) $tempRepost .= "<div class='qdestaques2'>".LDPU_MODIFY_DATA_INVALID_PASSWORD."</div>";
else {
if(USE_MD5 == false) $result = $this->query("UPDATE ".DATABASE_ACCOUNTS.".dbo.MEMB_INFO SET memb__pwd = '". $_POST['userPwdNew'] ."' WHERE memb___id='". $_SESSION['LOGIN'] ."'");
if(USE_MD5 == true) $result = $this->query("exec dbo.webPwdHashWrite '". $_SESSION['LOGIN'] ."', '". $_POST['userPwdNew'] ."'");
if($result)
{
$tempRepost .= "<div class='qdestaques2'>".LDPU_MODIFY_DATA_SUCCESS_ALTER."</div>";
$this->writeLog(1, $_SESSION['LOGIN'], "", LDPU_MODIFY_DATA_LOG_PASSWORD_ALTER);
}
else
$tempRepost .= "<div class='qdestaques'>".LDPU_MODIFY_DATA_ERROR_ALTER.".</div>";
}
break;
}
$ldTpl->set("RespostWrite", $tempRepost);
$SQL_Q = $this->query("SELECT tel__numb,mail_addr,fpas_ques FROM ".DATABASE_ACCOUNTS.".dbo.MEMB_INFO WHERE memb___id='". $_SESSION['LOGIN'] ."'");
$SQL = mssql_fetch_object($SQL_Q);
$ldTpl->set("TEL__NUMB", $SQL->tel__numb);
$ldTpl->set("MAIL_ADDR", $SQL->mail_addr);
$ldTpl->set("USER_FQUEST", $SQL->fpas_ques);
}
Queria deixar só o código responsável pela segunda parte, onde pede para responder a pergunta secreta pra conseguir mudar.
Só que retirando o sistema de senha, colocando só para mudar o CtlCode para 2
update Character set CtlCode = 2 where AccountId = 'minhaconta'
Alguem consegue ajudar fazer ?