Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Boa tarde galera
Estou há alguns dias lendo e aprendendo a programar em PHP, e ontem montei um sisteminha de login e senha, e tudo ocorria bem enquanto os testes eram locais. Quando testei ele online, apareceu o seguinte erro:
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in ...login.php on line 33
<?php
if (!isset($_POST["entrar"]))
{
?>
<form method="POST" action="login.php">
<div class="label">Usuário:</div><input type="text" name="usuario" size="40" maxlength="12" />
<br><br>
<div class="label">Senha:</div><input type="password" name="senha" size="40" maxlength="12" />
<br><br>
<input type="submit" value="ENTRAR" name="entrar" class="submit" />
</form>
<?php
}
else
{
include "includes/conexao.inc";
$usuario = $_POST["usuario"];
$senha = $_POST["senha"];
$sql = "SELECT * FROM usuarios WHERE login='$usuario'";
$resultado = mysql_query($sql,$conexao);
-----> $linhas = mysql_num_rows($resultado); //ESSA É A LINHA 33
echo $linhas;
-----> $reg = mysql_fetch_array($resultado); //ESSA É A LINHA 37 QUE TAMBÉM DÁ PROBLEMA
if ($linhas == 0)
{
echo "Nenhum usuário encontrado.<br>";
echo "<a href='javascript:history.go(-1)'>Voltar</a>";
}Com alguns "echo"s verifiquei que as variáveis $usuario e $senha estão guardando os valores corretamente, que a variavel $sql troca a variavel $usuario corretamente, ou seja, o erro só pode estar na variavel $resultado, estou certo?
Já alterei ela de
$resultado = mysql_query($sql,$conexao);
para
$resultado = mysql_query($sql);
para
$resultado = mysql_query("SELECT * FROM usuarios WHERE login='$usuario'");
e para
$resultado = mysql_query("SELECT * FROM usuarios WHERE login='$usuario'",$conexao);
e nenhuma resolveu o problema. Parece q minha conexao com o bd está correta, pois qq dado que altero lá me retornam outros erros... Alguma sugestão?
Carregando comentários...