Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

matheus280

Undefined index: id em apenas uma página.

Recommended Posts

Estou com um problema de Undefined index: id, mas ele só ocorre em uma página, eu coloquei em duas, procurei na que está funcionando mas não achei nada. Se alguém poder encontrar o problema e me ajudar, aqui está os códigos.

 

Página errada (obs: deixei personagemid = 1 por causa do erro)

<?php

$idPersonagem = $_GET['id'];
$buscaPersonagem = mysql_query("SELECT * FROM personagem WHERE personagemid = 1");
$dadosPersonagem = mysql_fetch_array($buscaPersonagem);
?>

<div id="painel-principal-jogo">
	<nav>
		<ul>
			<li><a href="http://25.18.209.161:8000/browser-game/">Pagina Inicial</a></li>
			<li><a href="http://25.18.209.161:8000/browser-game/?pagina=personagens">Personagens</a></li>
			<li><a href="http://25.18.209.161:8000/browser-game/?pagina=mensagens">Mensagens</a></li>
			<li><a href="http://25.18.209.161:8000/browser-game/?pagina=sair">Sair</a></li>
		</ul>
	</nav>
<!-- Menu do Personagem -->
<div id="painel-personagem">
	
	<div class="avatar"></div>
	
	<?php
	
	$vidaAtual = $dadosPersonagem['vida'];
	$vidaTotal = $dadosPersonagem['vidacheia'];
	
	$porcentagemVida = ($vidaAtual/$vidaTotal)*100;
	
	if($porcentagemVida <= 0) {
		$porcentagemVida = 0;
	}
	
	?>
	
	<div class="barra" id="vida">
	 
		<div id="vida-atual" style="width:<?php echo $porcentagemVida; ?>%"></div>
	
	</div>
	<?php
	
	$xpAtual = $dadosPersonagem['experiencia'];
	$xpTotal = $dadosPersonagem['xptotal'];
	
	$porcentagemXp = ($xpAtual/$xpTotal)*100;
	
	if($porcentagemXp <= 0) {
		$porcentagemXp = 0;
	}
	if($porcentagemXp >= 100) {
		$porcentagemXp = 100;
	}
	?>
	<div class="barra" id="exp">
	
		<div id="exp-atual" style="width:<?php echo $porcentagemXp; ?>%"></div>
	
	</div>
	
</div>

<!-- Menu do Oponente -->	
<div id="painel-batalha">
 
<!--Oponente 1 --> 
<a href="?pagina=oponente&id=1">
<span class="oponente">Oponente1</span>
</a>

<!--Oponente 2 --> 
<a href="?pagina=oponente1">
<span class="oponente">Oponente2</span>
</a>
<!--Oponente 3 --> 	
<a href="?pagina=oponente1">
<span class="oponente">Oponente3</span>
</a>

</div>

</div>

Página certa

<?php
$idPersonagem = $_GET['id'];
$buscaPersonagem = mysql_query("SELECT * FROM personagem WHERE personagemid = $idPersonagem");
$dadosPersonagem = mysql_fetch_array($buscaPersonagem);


//level up
$xpPer = $dadosPersonagem['experiencia'];
$level = $dadosPersonagem['level'];
$xpMax = $dadosPersonagem['xptotal'];
$xpResto = ($xpPer-$xpMax);
if($xpPer >= $xpMax){
	echo 'você upou';
	mysql_query("UPDATE personagem SET level = level+1 WHERE personagemid = $idPersonagem");
	mysql_query("UPDATE personagem SET experiencia = $xpResto WHERE personagemid = $idPersonagem");
	mysql_query("UPDATE personagem SET xptotal = xptotal+xptotal/2 WHERE personagemid = $idPersonagem");
    echo "$level";
}
?>

<div id="painel-principal-jogo">
	<nav>
		<ul>
			<li><a href="http://25.18.209.161:8000/browser-game/?pagina=jogo">Pagina Inicial</a></li>
			<li><a href="http://25.18.209.161/browser-game/usuario/sair.php">Sair</a></li>
		</ul>
	</nav>
<!-- Menu do Personagem e barras de xp hp-->
<div id="painel-personagem">
	
	<div class="avatar"></div>
	
	<?php
	
	$vidaAtual = $dadosPersonagem['vida'];
	$vidaTotal = $dadosPersonagem['vidacheia'];
	
	$porcentagemVida = ($vidaAtual/$vidaTotal)*100;
	
	if($porcentagemVida <= 0) {
		$porcentagemVida = 0;
	}
	
	?>
	
	<div class="barra" id="vida">
	 
		<div id="vida-atual" style="width:<?php echo $porcentagemVida; ?>%"></div>
	
	</div>
	
	<?php
	
	$xpAtual = $dadosPersonagem['experiencia'];
	$xpTotal = $dadosPersonagem['xptotal'];
	
	$porcentagemXp = ($xpAtual/$xpTotal)*100;
	
	if($porcentagemXp <= 0) {
		$porcentagemXp = 0;
	}
	if($porcentagemXp >= 100) {
		$porcentagemXp = 100;
	}
	?>
	<div class="barra" id="exp">
	
		<div id="exp-atual" style="width:<?php echo $porcentagemXp; ?>%"></div>
	
	</div>
	
</div>
<!-- Menu do Oponente -->	
<div id="painel-batalha">
 
	<a href="?pagina=oponente&id=1">
	<span class="oponente">Oponente1</span>
	</a>
	
	<form action="" method="post">
	<input type="submit" name="atacar" value="Atacar" />
	</form>
 
</div>

</div>

<?php
if(isset($_POST['atacar'])) {
	//Dano usuario
	$idOponente = $_GET['id'];
	

	$acerto = rand(0, 100);
	
	if($acerto > 50) {
		
		$danoTirado = rand(50, 100);
		
		mysql_query("UPDATE oponentes SET vida = vida-$danoTirado WHERE oponenteid = $idOponente");
		
		$buscaOp = mysql_query("SELECT * FROM oponentes WHERE oponenteid = $idOponente");
		$dadosOp = mysql_fetch_array($buscaOp);
		
		if($dadosOp['vida'] <= 0) {
			
			$xpGanha = ($dadosOp['experiencia']);
			
			mysql_query("UPDATE personagem SET experiencia = experiencia+$xpGanha WHERE personagemid = $idPersonagem");
			echo 'No céu tem pão? já sabe o resto né?     -';
		}
		
		echo "Dano: $danoTirado ";
		echo ' - acertou';
	} else {
		echo 'Erouuuu!';
	}
	
	//Dano oponente
	$acertoOp = rand(0, 100);
	
	if($acertoOp > 50) {
		
		$danoTiradoOp = rand(10, 20);
		
		mysql_query("UPDATE personagem SET vida=vida-$danoTiradoOp WHERE personagemid = $idPersonagem");
		
		echo "Dano: $danoTiradoOp ";
		echo ' - acertou';
	} else {
		echo 'Erouuuu!';
	}
	
	if($dadosPersonagem['vida'] <= 0) {
		echo 'Você perguntou para sua mãe... No céu tem pão? já sabe o resto né?     -';
	}

}
?>

Desculpe pela bagunça, mais me acostumei fazer assim, se eu tiver mais duvidas futuras, deixarei mais organizado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.