Ir para conteúdo

Arquivado

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

marcelobbt

Problemas de versão

Recommended Posts

Construí um site usando o easyphp que tem o php 5.5.x

 

E quando fui hospedar, o site usava a versão 5.3

 

 

Então começou a aparecer vários problemas como:

 

Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in ...

 

Isso está ocorrendo quando vou checar se algum nome já foi cadastrado no banco. Como não existe, ele da esse erro que não aparecia na versão que desenvolvi o site.

 

Tem algum jeito de corrigir esse problema?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Mas como erro se testei na minha máquina e rodou perfeitamente?

 

Isso que não entendo porque agora na web está dando erro.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Segue erro:

Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in ... on line 44 Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in ... on line 51

 

Os 2 erros ocorrem nas linhas da $sql.

 

A parte do código que está dando erro (a primeira linha exibida é a linha 42):

//verifica se o nome do personagem existe
		$query = mysql_query("select * from personagens_dados where Nomepersonagem = '$nomepersonagem'");
		$sql = mysql_num_rows($query); //or die(mysql_error());
		if($sql != 0) { //se existir volta para trocar o nome
			echo '<p class="meio">O nome do personagem que você digitou já existe, tente outro!<br></p>';
			echo '<p class="meio"><a href="javascript:window.history.go(-1)">Voltar</a></p>';
		} else {	
			//verifica se usuário possui personagem
			$query = mysql_query("select * from personagens_dados where IDusuario = '$idusuario'");
			$sql = mysql_num_rows($query);
			if($sql != 0) {	//se existir vai para a página do jogo
				echo '<p class="meio">O usuário já possui um personagem!<br></p>';
				echo '<p class="meio"><a href=jogo.php>Entrar no jogo</a></p>';
			} else {
				//grava personagem

 

 

 

Creio que a exibição de erros no seu servidor está desabilitada.

 

 

 

Humm já que é isto como corrijo esse erro, para os casos em que não houver valor no banco?

Compartilhar este post


Link para o post
Compartilhar em outros sites

 

Faz um debug ae na sua query. Na linha abaixo da $query coloque:

 

die ($query);

Deu a seguinte informação:

Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in ... on line 44

 

Coloquei também um "or die(mysql_error());"

e deu o seguinte:

Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in ... on line 44 Table '...' doesn't exist

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tem algo errado nessa linha.

$query = mysql_query("select * from personagens_dados where Nomepersonagem = '$nomepersonagem'");

Algum parâmetro errado. Confira tudo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Peço desculpas mas realmente havia uma letrinha errada no nome da tabela e agora funcionou quase tudo.

 

Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in ... on line 44 Illegal mix of collations (latin1_swedish_ci,IMPLICIT) and (utf8_unicode_ci,COERCIBLE) for operation '='

 

 

Alguém pode me ajudar?

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.