Jump to content


Photo

Variavel Inserindo No If E No Else


  • Faça o login para participar
5 replies to this topic

#1 Dj Del Palmis

Dj Del Palmis

    Novato no fórum

  • Usuários
  • 17 posts
  • Sexo:Não informado

Posted 22/01/2011, 14:42

Pessoal que poder me dar uma luz eu fikaria grato. Estou com um problem serio em um script que eu fiz aqui. Até agora não estou entendendo o porque mais a variavel está entrando no if executando e entrando no else e sendo excutada tambem.
Eis a Página
<?php 
include('includes/config.php'); 
include('restrito.php');
	$tes = date('d/m/Y');
	$datass = fetch(query('SELECT * FROM vote_contar WHERE login = "'.$_SESSION['login'].'" AND banner_id = 1'));
	$time = rand(15, 30);
	$mudar = htmlspecialchars($_GET['change']);
	if(isset($mudar)){
		unset($_SESSION['charid']);
	}
	$sql = query('SELECT * FROM characters WHERE account_name = "'.$_SESSION['login'].'"');
	if(isset($_GET['charid'])){
		$char = htmlspecialchars($_GET['charid']);
		$row = rows(query('SELECT * FROM characters WHERE account_name = "'.$_SESSION['login'].'" AND charId = '.$char));
		if($row == 0){
		echo('<script>window.alert("Tentativa de Invasão detectada! Deslogando você para nossa segurança"); window.location="index.php";</script>');
		session_destroy();
		exit();
		}
		else{
			$_SESSION['charid'] = $_GET['charid'];
		}
	}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<link href="includes/estilos.css" rel="stylesheet" type="text/css" />
<script type="text/javascript" src="includes/js/jquery-1.3.2.min.js"> </script>
<title><?php echo titulo ?></title>
<script>
var abrelink = "<?php echo base64_decode($_GET['link']); ?>";
</script>
</head>

<body <?php if(isset($_GET['link'])){ ?> onload="window.open(abrelink);" <?php } ?>>
<div class="all">
      <div class="center"><div class="central"><table width="789" border="0" align="center" cellpadding="0" cellspacing="0">
        <tr>
          <td width="789" height="358" align="center" class="central">
            <img src="images/logo.png" width="435" height="210" />
<table width="435" border="0" cellpadding="0" cellspacing="0" class="default">
          <tr>
                <td colspan="2" align="left" valign="middle" style="padding:3px;">Voc&ecirc; est&aacute; logado como: <span style="text-transform:uppercase;"><a href="#"><?php echo $_SESSION['login'] ?></a></span></td>
            </tr>
              <tr>
                <td colspan="2" align="center" valign="middle" style="padding:3px; float:"><?php if(!isset($_SESSION['charid'])){ ?><span style="font-weight:normal;">Selecione um Char Primeiro:</span><br />
<?php while( $res = fetch($sql)){ ?>
                  <div align="center" class="chars"><a href="?charid=<?php echo $res['charId'] ?>"><?php echo $res['char_name'] ?></a></div>
                <?php }}else{ $chars = fetch(query('SELECT * FROM characters WHERE charId = '.$_SESSION['charid'])); ?>Char Selecionado: <span style="text-transform:uppercase"><a href="#"><?php echo $chars['char_name'] ?></a></span><br /> 
                | <a href="votar.php" title="Vote e Ganhe!">Votar</a> | <a href="?change=true" title="Trocar de Char">Mudar Char</a> | <a href="logout.php" title="Sair do Painel">Sair</a> |                <?php } ?></td>
            </tr>
              <tr>
                <td colspan="2" align="center" valign="middle" style="padding:3px;"><?php $vote = query('SELECT * FROM vote_config'); if(isset($char)){ while( $img = fetch($vote)){ ?>Votar em <?php echo $img['titulo'] ?><br /><a href="?charid=<?php echo $_SESSION['charid'] ?>&link=<?php echo base64_encode($img['link_vote']); ?>"><img src="<?php echo $img['imagem'] ?>" border="0" /></a><br /><br /><?php if(isset($_GET['link'])){ ?><div id="carregando">
                  <div class="destino"><a href="<?php echo url ?>" target="_blank"><img src="images/logo_mini.png" width="162" height="47" border="0" align="absmiddle" style="padding-top:7px;" /></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<img src="images/loading.gif" width="32" height="32" align="absmiddle"/> Validando<br />
Est&aacute; a&ccedil;&atilde;o pode demorar de 15 a 30 segundos!<br /><span style="color:red;">Atenção</span>: Desative seu  bloqueador de pop-up ou coloque nosso site na lista de remetentes confiaveis.
</div></div><?php $rand = rand(0000000,9999999); 
	$rewrite = base64_decode($_GET['link']);
	$b_id = fetch(query('SELECT * FROM vote_config WHERE link_vote = "'.$rewrite.'" LIMIT 1'));
	$ip = $_SERVER['REMOTE_ADDR'];
	$conta = rows(query('SELECT * FROM vote_contar WHERE login = "'.$_SESSION['login'].'" AND banner_id = '.$b_id['id']));
	$v_ip = rows(query('SELECT * FROM vote_contar WHERE ip = "'.$ip.'" AND banner_id = '.$b_id['id']));
	$a_data = date('d/m/Y');
	$data_old = fetch(query('SELECT * FROM vote_contar WHERE login = "'.$_SESSION['login'].'" AND banner_id = '.$b_id['id'].' ORDER BY data DESC LIMIT 1'));
	$c_data = $data_old['data'];
	$atu_d = explode('/', $a_data);
	$old_d = explode('/', $c_data);
	if($conta == 0){
		$c_site = query('SELECT * FROM vote_config');
			while($vote_r = fetch($c_site)){
					mysql_query('INSERT INTO vote_contar(login, ip, data, banner_id, chars) VALUES("'.$_SESSION['login'].'", "'.$ip.'", "00/00/0000", '.$vote_r['id'].', "'.$_GET['charid'].'")');
			}
		}
		if($a_data == $c_data){
			msg('Error! Você já Votou Hoje.', 'votar.php?charid='.$_SESSION['charid']);
			exit();
			if($conta == 1){
				msg('Error! Está conta já votou hoje.', 'votar.php?charid='.$_SESSION['charid']);
				exit();
			}
			if($v_ip == 1){
			msg('Error! Você não pode votar com mesmo endereço de IP!', 'votar.php?charid='.$_SESSION['charid']);
			exit();
			}
		}
		else{
			header('Refresh:'.$time.'; votar.php?charid='.$_SESSION['charid'].'&votou='.$rand);
			mysql_query('INSERT INTO vote_contar(login, ip, data, banner_id, chars) VALUES("'.$_SESSION['login'].'", "'.$ip.'", "'.date('d/m/Y').'", '.$b_id['id'].', "'.$_GET['charid'].'")');
		}
}}} ?></td>
              </tr>
              <tr>
                <td colspan="2" align="left" valign="middle" style="padding:3px;"><span style="color:red;">Aten&ccedil;&atilde;o:</span> Este sistema est&aacute; protegido, qualquer tentativa de burlar o sistema, poder&aacute; resultar em banimento de sua conta.</td>
              </tr>
            </table>
         </td>
        </tr>
        <tr>
          <td height="23" align="right" valign="middle" style="padding:3px; color:#333;">Todos os direitos Reservados &copy; L2 <a href="<?php echo url ?>" target="_blank" class="none">Raptors.com</a>| System Reward Powered by <a href="http://www.monsterz.com.br" target="_blank" class="none">Palmi&eacute;ri Andrioli Hell</a></td>
        </tr>
      </table>
      </div></div>
</div><?php if(isset($_GET['votou'])){ ?> <div class="menu"><a href="<?php echo url ?>" target="_blank"><img src="images/logo_mini.png" width="162" height="47" border="0" align="absmiddle" /></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<img src="images/tickmark.png" width="33" height="25" align="absmiddle"/> Voto V&aacute;lidado com Sucesso! Seu Item j&aacute; se encontra em sua WareHouse.<br />
</div><?php } ?>
</body>
</html>

O erro ocorre aqui:
if($a_data == $c_data){
                        msg('Error! Você já Votou Hoje.', 'votar.php?charid='.$_SESSION['charid']);
                        exit();
                        if($conta == 1){
                                msg('Error! Está conta já votou hoje.', 'votar.php?charid='.$_SESSION['charid']);
                                exit();
                        }
                        if($v_ip == 1){
                        msg('Error! Você não pode votar com mesmo endereço de IP!', 'votar.php?charid='.$_SESSION['charid']);
                        exit();
                        }
                }
                else{
                        header('Refresh:'.$time.'; votar.php?charid='.$_SESSION['charid'].'&votou='.$rand);

                        mysql_query('INSERT INTO vote_contar(login, ip, data, banner_id, chars) VALUES("'.$_SESSION['login'].'", "'.$ip.'", "'.date('d/m/Y').'", '.$b_id['id'].', "'.$_GET['charid'].'")');
                }

Mesmo que a data esteja diferente ela printa a mensagem de erro para usuário mais faz a inserção no else.

Edição feita por: Dj Del Palmis, 22/01/2011, 14:44.


#2 bigcheat

bigcheat

    Turista

  • Usuários
  • 38 posts
  • Sexo:Masculino
  • Localidade:Fortaleza-CE

Posted 22/01/2011, 16:12

Pessoal que poder me dar uma luz eu fikaria grato. Estou com um problem serio em um script que eu fiz aqui. Até agora não estou entendendo o porque mais a variavel está entrando no if executando e entrando no else e sendo excutada tambem.
Eis a Página

<?php 
include('includes/config.php'); 
include('restrito.php');
	$tes = date('d/m/Y');
	$datass = fetch(query('SELECT * FROM vote_contar WHERE login = "'.$_SESSION['login'].'" AND banner_id = 1'));
	$time = rand(15, 30);
	$mudar = htmlspecialchars($_GET['change']);
	if(isset($mudar)){
		unset($_SESSION['charid']);
	}
	$sql = query('SELECT * FROM characters WHERE account_name = "'.$_SESSION['login'].'"');
	if(isset($_GET['charid'])){
		$char = htmlspecialchars($_GET['charid']);
		$row = rows(query('SELECT * FROM characters WHERE account_name = "'.$_SESSION['login'].'" AND charId = '.$char));
		if($row == 0){
		echo('<script>window.alert("Tentativa de Invasão detectada! Deslogando você para nossa segurança"); window.location="index.php";</script>');
		session_destroy();
		exit();
		}
		else{
			$_SESSION['charid'] = $_GET['charid'];
		}
	}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<link href="includes/estilos.css" rel="stylesheet" type="text/css" />
<script type="text/javascript" src="includes/js/jquery-1.3.2.min.js"> </script>
<title><?php echo titulo ?></title>
<script>
var abrelink = "<?php echo base64_decode($_GET['link']); ?>";
</script>
</head>

<body <?php if(isset($_GET['link'])){ ?> onload="window.open(abrelink);" <?php } ?>>
<div class="all">
      <div class="center"><div class="central"><table width="789" border="0" align="center" cellpadding="0" cellspacing="0">
        <tr>
          <td width="789" height="358" align="center" class="central">
            <img src="images/logo.png" width="435" height="210" />
<table width="435" border="0" cellpadding="0" cellspacing="0" class="default">
          <tr>
                <td colspan="2" align="left" valign="middle" style="padding:3px;">Voc&ecirc; est&aacute; logado como: <span style="text-transform:uppercase;"><a href="#"><?php echo $_SESSION['login'] ?></a></span></td>
            </tr>
              <tr>
                <td colspan="2" align="center" valign="middle" style="padding:3px; float:"><?php if(!isset($_SESSION['charid'])){ ?><span style="font-weight:normal;">Selecione um Char Primeiro:</span><br />
<?php while( $res = fetch($sql)){ ?>
                  <div align="center" class="chars"><a href="?charid=<?php echo $res['charId'] ?>"><?php echo $res['char_name'] ?></a></div>
                <?php }}else{ $chars = fetch(query('SELECT * FROM characters WHERE charId = '.$_SESSION['charid'])); ?>Char Selecionado: <span style="text-transform:uppercase"><a href="#"><?php echo $chars['char_name'] ?></a></span><br /> 
                | <a href="votar.php" title="Vote e Ganhe!">Votar</a> | <a href="?change=true" title="Trocar de Char">Mudar Char</a> | <a href="logout.php" title="Sair do Painel">Sair</a> |                <?php } ?></td>
            </tr>
              <tr>
                <td colspan="2" align="center" valign="middle" style="padding:3px;"><?php $vote = query('SELECT * FROM vote_config'); if(isset($char)){ while( $img = fetch($vote)){ ?>Votar em <?php echo $img['titulo'] ?><br /><a href="?charid=<?php echo $_SESSION['charid'] ?>&link=<?php echo base64_encode($img['link_vote']); ?>"><img src="<?php echo $img['imagem'] ?>" border="0" /></a><br /><br /><?php if(isset($_GET['link'])){ ?><div id="carregando">
                  <div class="destino"><a href="<?php echo url ?>" target="_blank"><img src="images/logo_mini.png" width="162" height="47" border="0" align="absmiddle" style="padding-top:7px;" /></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<img src="images/loading.gif" width="32" height="32" align="absmiddle"/> Validando<br />
Est&aacute; a&ccedil;&atilde;o pode demorar de 15 a 30 segundos!<br /><span style="color:red;">Atenção</span>: Desative seu  bloqueador de pop-up ou coloque nosso site na lista de remetentes confiaveis.
</div></div><?php $rand = rand(0000000,9999999); 
	$rewrite = base64_decode($_GET['link']);
	$b_id = fetch(query('SELECT * FROM vote_config WHERE link_vote = "'.$rewrite.'" LIMIT 1'));
	$ip = $_SERVER['REMOTE_ADDR'];
	$conta = rows(query('SELECT * FROM vote_contar WHERE login = "'.$_SESSION['login'].'" AND banner_id = '.$b_id['id']));
	$v_ip = rows(query('SELECT * FROM vote_contar WHERE ip = "'.$ip.'" AND banner_id = '.$b_id['id']));
	$a_data = date('d/m/Y');
	$data_old = fetch(query('SELECT * FROM vote_contar WHERE login = "'.$_SESSION['login'].'" AND banner_id = '.$b_id['id'].' ORDER BY data DESC LIMIT 1'));
	$c_data = $data_old['data'];
	$atu_d = explode('/', $a_data);
	$old_d = explode('/', $c_data);
	if($conta == 0){
		$c_site = query('SELECT * FROM vote_config');
			while($vote_r = fetch($c_site)){
					mysql_query('INSERT INTO vote_contar(login, ip, data, banner_id, chars) VALUES("'.$_SESSION['login'].'", "'.$ip.'", "00/00/0000", '.$vote_r['id'].', "'.$_GET['charid'].'")');
			}
		}
		if($a_data == $c_data){
			msg('Error! Você já Votou Hoje.', 'votar.php?charid='.$_SESSION['charid']);
			exit();
			if($conta == 1){
				msg('Error! Está conta já votou hoje.', 'votar.php?charid='.$_SESSION['charid']);
				exit();
			}
			if($v_ip == 1){
			msg('Error! Você não pode votar com mesmo endereço de IP!', 'votar.php?charid='.$_SESSION['charid']);
			exit();
			}
		}
		else{
			header('Refresh:'.$time.'; votar.php?charid='.$_SESSION['charid'].'&votou='.$rand);
			mysql_query('INSERT INTO vote_contar(login, ip, data, banner_id, chars) VALUES("'.$_SESSION['login'].'", "'.$ip.'", "'.date('d/m/Y').'", '.$b_id['id'].', "'.$_GET['charid'].'")');
		}
}}} ?></td>
              </tr>
              <tr>
                <td colspan="2" align="left" valign="middle" style="padding:3px;"><span style="color:red;">Aten&ccedil;&atilde;o:</span> Este sistema est&aacute; protegido, qualquer tentativa de burlar o sistema, poder&aacute; resultar em banimento de sua conta.</td>
              </tr>
            </table>
         </td>
        </tr>
        <tr>
          <td height="23" align="right" valign="middle" style="padding:3px; color:#333;">Todos os direitos Reservados &copy; L2 <a href="<?php echo url ?>" target="_blank" class="none">Raptors.com</a>| System Reward Powered by <a href="http://www.monsterz.com.br" target="_blank" class="none">Palmi&eacute;ri Andrioli Hell</a></td>
        </tr>
      </table>
      </div></div>
</div><?php if(isset($_GET['votou'])){ ?> <div class="menu"><a href="<?php echo url ?>" target="_blank"><img src="images/logo_mini.png" width="162" height="47" border="0" align="absmiddle" /></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<img src="images/tickmark.png" width="33" height="25" align="absmiddle"/> Voto V&aacute;lidado com Sucesso! Seu Item j&aacute; se encontra em sua WareHouse.<br />
</div><?php } ?>
</body>
</html>

O erro ocorre aqui:
if($a_data == $c_data){
                        msg('Error! Você já Votou Hoje.', 'votar.php?charid='.$_SESSION['charid']);
                        exit();
                        if($conta == 1){
                                msg('Error! Está conta já votou hoje.', 'votar.php?charid='.$_SESSION['charid']);
                                exit();
                        }
                        if($v_ip == 1){
                        msg('Error! Você não pode votar com mesmo endereço de IP!', 'votar.php?charid='.$_SESSION['charid']);
                        exit();
                        }
                }
                else{
                        header('Refresh:'.$time.'; votar.php?charid='.$_SESSION['charid'].'&votou='.$rand);

                        mysql_query('INSERT INTO vote_contar(login, ip, data, banner_id, chars) VALUES("'.$_SESSION['login'].'", "'.$ip.'", "'.date('d/m/Y').'", '.$b_id['id'].', "'.$_GET['charid'].'")');
                }

Mesmo que a data esteja diferente ela printa a mensagem de erro para usuário mais faz a inserção no else.


Bom eu não sei ao certo qual o problema mais acredito que seja na variável $data_old algum erro pela sua database, e se servir de ajuda aconselho você a especificar melhor o else como por exemplo:
}elseif($a_data != $c_data){

Espero ter ajudado.

Abraços,
bigCheat.

#3 Dj Del Palmis

Dj Del Palmis

    Novato no fórum

  • Usuários
  • 17 posts
  • Sexo:Não informado

Posted 22/01/2011, 17:01

Bom a questão e que só acontece isso quando não tenho o registro na db ou quando as datas não são iguais. Ele está passando pelo comando if($a_data == $c_data) toda hora. só que quando a datas são iguais ele não inseri se elas forem diferentes ele insere mais mais mostra a mensagem de erro ao usuário.

#4 Leonardo Garcia

Leonardo Garcia

    Normal

  • Usuários
  • 110 posts
  • Sexo:Masculino
  • Localidade:Londrina Paraná

Posted 22/01/2011, 18:41

dá echo das datas pra saber como elas estão vindo...

para brecar dá um die($c_data);
Eu podia tá matando, roubando ou me prostituindo. Mas só quero um ponto.

#5 bigcheat

bigcheat

    Turista

  • Usuários
  • 38 posts
  • Sexo:Masculino
  • Localidade:Fortaleza-CE

Posted 22/01/2011, 19:21

Bom a questão e que só acontece isso quando não tenho o registro na db ou quando as datas não são iguais. Ele está passando pelo comando if($a_data == $c_data) toda hora. só que quando a datas são iguais ele não inseri se elas forem diferentes ele insere mais mais mostra a mensagem de erro ao usuário.


Bom como são coisas simples, anexa seu código todo no tópico pra mim dar uma olhada, talvez possa lhe ajudar.

#6 Dj Del Palmis

Dj Del Palmis

    Novato no fórum

  • Usuários
  • 17 posts
  • Sexo:Não informado

Posted 22/01/2011, 21:53

Leonardo as datas estão printando iguais.

$a_data = 22/11/2011
$c_data = 21/11/2011

bigcheat o codigo todo está ai. está página que faz a inserção.
E só olha no inicio do tópico.

Resolvi separei o todo o código e chamei uma $_get para o codigo só ser excutado quando a $_get existir. Resolvido o problema. E que ele estava executando duas vezes a linha de código. Primeiro ele inseria e depois ele pegava a verificação.

Edição feita por: Dj Del Palmis, 22/01/2011, 20:04.





0 user(s) are reading this topic

0 membro(s), 0 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq