Neto Sales
sistema de login
04 de March de 2018 às 08:41AM
Tenho um sistema de Login, que já funciona em outro site e estou tentando transferir pra outro, e não funciona de jeito nenhum. Gostaria que alguém desse uma olhada. Se digito um usuário errado, retorna um erro de usuário inválido, então está checando o banco. Quando insiro um usuário certo, aparece as seguintes mensagens de erro:

Warning: session_start(): Cannot send session cookie - headers already sent by (output started at /home/netosale/public_html/e-educacao/validacao.php:2) in /home/netosale/public_html/e-educacao/validacao.php on line 28

Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at /home/netosale/public_html/e-educacao/validacao.php:2) in /home/netosale/public_html/e-educacao/validacao.php on line 28

Warning: Cannot modify header information - headers already sent by (output started at /home/netosale/public_html/e-educacao/validacao.php:2) in /home/netosale/public_html/e-educacao/validacao.php on line 36

Vou lá nessas duas linhas, e não consigo localizar absolutamente nada de anormal. O que pode estar acontecendo. Já baixei diversos outros sistemas de login, e todos dão erro. Será que é algum problema bom o bootstrap ou coisa parecida? Segue código pra que dêem uma olhada:

<?php
// Verifica se houve POST e se o usuсrio ou a senha щ(sуo) vazio(s)
if (!empty($_POST) AND (empty($_POST['usuario']) OR empty($_POST['senha']))) {
header("Location: index.php"); exit;
}
// Tenta se conectar ao servidor MySQL
mysql_connect('localhost', 'xzthyb45', '164544515151561') or trigger_error(mysql_error());
// Tenta se conectar a um banco de dados MySQL
mysql_select_db('ljklfdfjkldj') or trigger_error(mysql_error());

$usuario = mysql_real_escape_string($_POST['usuario']);
$senha = mysql_real_escape_string($_POST['senha']);
// Validaчуo do usuсrio/senha digitados
$sql = "SELECT `id`, `nome`, `nivel` FROM `userPerms` WHERE (`usuario` = '".$usuario ."') AND (`senha` = '". sha1($senha) ."') AND (`ativo` = 1) LIMIT 1";
$query = mysql_query($sql);
if (mysql_num_rows($query) != 1) {
// Mensagem de erro quando os dados sуo invсlidos e/ou o usuсrio nуo foi encontrado
echo "Login invсlido!"; exit;
} else {
// Salva os dados encontados na variсvel $resultado
$resultado = mysql_fetch_assoc($query);
}


// Se a sessуo nуo existir, inicia uma
if (!isset($_SESSION)) session_start();

//Salva os dados encontrados na sessуo
$_SESSION['UsuarioID'] = $resultado['id'];
$_SESSION['UsuarioNome'] = $resultado['nome'];
$_SESSION['UsuarioNivel'] = $resultado['nivel'];

// Redireciona o visitante
header("Location: novaTela.php");
exit;


?>
Eduardo Molina
Re: sistema de login
21 de March de 2018 às 05:39PM
Boa noite,

provavelmente o que pode estar ocorrendo, é unicamente que na hospedagem que tu esta utilizando o sistema inicialmente esteja com uma versão do PHP e mysql, e na nova hospedagem encontre-se com uma mais atual.
Você precisa estar logado no PHPBrasil.com para poder enviar mensagens para os nossos fóruns.

Faça o login aqui.