Buthy 0 Denunciar post Postado Março 31, 2011 Dae galera.. To me complicando bastante aqui... Um dos erros que acontece é esse (quando vai fazer o login): Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at /home/site/public_html/login.php:1) in /home/site/public_html/login.php on line 11 Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent by (output started at /home/site/public_html/login.php:1) in /home/site/public_html/login.php on line 11 login.php <?php ob_start(); $usuario = $_POST["usuario"]; $senha = $_POST["senha"]; $table = array(); $table["usuario"] = "admin"; $table["senha"] = "admin"; if($usuario == $table["usuario"] && $senha == $table["senha"]) { session_start(); $_SESSION["usuario"] = $usuario; $_SESSION["senha"] = $senha; echo "<script language='javascript'>window.location.href='admin.php'</script>"; } else { echo "<script language='javascript'>window.location.href='loginForm.html'</script>" ; } ob_end_flush(); ?> já coloquei o ob_start(); ob_end_flush(); troquei os header(location:); e nadaa... alguém sabe como resolvo isso? Dai mesmo assim ele faz o login, e acontece esses erros: Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at /home/site/public_html/admin.php:7) in /home/site/public_html/admin.php on line 82 Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /home/site/public_html/admin.php:7) in /home/site/public_html/admin.php on line 82 Warning: Cannot modify header information - headers already sent by (output started at /home/site/public_html/admin.php:7) in /home/site/public_html/admin.php on line 84 admin.php <div align="right"> <?php session_start(); if(!isset($_SESSION['usuario'])) header("Location: logout.php"); ?> <span class="tit">Olá <strong><?=$_SESSION['usuario']?></strong>!</span> </div> Aí ainda não alterei o hedar("location")... Se alguém puder me ajudar, agradeço! Obrigado Compartilhar este post Link para o post Compartilhar em outros sites
douglaspossas 0 Denunciar post Postado Março 31, 2011 Esse arquivo login.php está sendo chamado de um outro arquivo através de um include ou require? Esse erro geramente dá quando já foi usado a session_start. Verifique se continua ocorrendo quando você colocar @ na frente. Exemplo @session_start(); Compartilhar este post Link para o post Compartilhar em outros sites
willwalker 2 Denunciar post Postado Março 31, 2011 Qualquer tipo de header(); tem que vir antes de tudo ou qualquer código HTML. Tente fazer o seguinte. Em vez de você escrever o arquivo inteiro e depois testar. Crie o arquivo login sem nada. Coloque o session_start(); Se não aparecer erros, coloque as vars. Salva e testa, se não aparecer erros, coloque um if, salva e testa e vai seguindo dessa forma. Tu vai perceber o erro onde está e vai poder arrumar sozinho. Siga minha dica Abraços Walker Compartilhar este post Link para o post Compartilhar em outros sites
Buthy 0 Denunciar post Postado Março 31, 2011 coloquei o @ na frente do session_start() e nao deu mais o erro :D valeu cara mas outra coisa no admin.php, no lugar do header("Location: logout.php"); o que eu coloco? pois se eu colocar isso: echo "<script language='javascript'>window.location.href='logout.php'</script>"; ele redireciona para o logout... Compartilhar este post Link para o post Compartilhar em outros sites
douglaspossas 0 Denunciar post Postado Março 31, 2011 coloquei o @ na frente do session_start() e nao deu mais o erro :D valeu cara mas outra coisa no admin.php, no lugar do header("Location: logout.php"); o que eu coloco? pois se eu colocar isso: echo "<script language='javascript'>window.location.href='logout.php'</script>"; ele redireciona para o logout... O @ só diz para o código que se ja tiver sido usado, nao é pra mandar a warning falando que ja startou a sessao. Quanto ao header na admin.php Ele só pode ser utilizado antes de qualquer SAIDA html do arquivo. Se por acaso você imprimiou qq coisa atraves de echo,print e demais funcoes, nao funcionará. A saída é o Javascript. Qualquer coisa grita! Compartilhar este post Link para o post Compartilhar em outros sites
willwalker 2 Denunciar post Postado Março 31, 2011 Colocar esse @ na frente resolve por agora, mas não seria o certo. Se está acontecendo esse erro, é porque tem algo de errado. Imagine você criando uma aplicação e dá algum erro parecido, tu vai dizer, opa, vou por o @ e tudo se resolve ? Reveja seu código. Abraços Walker Compartilhar este post Link para o post Compartilhar em outros sites
Buthy 0 Denunciar post Postado Março 31, 2011 poisé, mas eu ja estou a tarde inteira pesquisando sobre esse erro, mudando codigo, vendo outras opcoes, e nada! Compartilhar este post Link para o post Compartilhar em outros sites
willwalker 2 Denunciar post Postado Março 31, 2011 Faça o que eu falei, faça por passos o seu código, vá testando e editando. Você está errando em algum lugar. Só assim pra encontrar e corrigir. Para ser programador não pode ser preguiçoso em querer corrigir erros. Mas para outras coisas até é bom ser preguiçoso, porque te faz pensar em maneiras de como facilitar alguma coisa que você faz rotineiramente, e daí que surge novos métodos de como criar o código mais rápido. Abraços Walker Compartilhar este post Link para o post Compartilhar em outros sites
Buthy 0 Denunciar post Postado Março 31, 2011 outro erro que está dando é esse: Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/site/public_html/agendaAlterar.php on line 145 agendaAlterar.php <?php include("conectar.php"); $sql= "SELECT * FROM agenda ORDER BY id DESC"; $res= mysql_query($sql,$con); echo "<table width='500' border='0'>"; while ($linha=mysql_fetch_array($res)){ $id=$linha['id']; $nome=$linha['nome']; $cidade=$linha['cidade']; $local=$linha['local']; $data=$linha['data']; $hora = $linha['hora']; echo "<tr> <td class='titg'><strong>$nome / </strong><span class='tit'>Data: $data $hora - <a class='link' href=agendaDeletar.php?id=$id>Excluir</a></span></td> </tr> <tr> <td class='tit'><strong>$local / </strong>$cidade</td> </tr> <tr> <td class='tit'> </td> </tr> "; } echo "</table>"; ?> no caso, da erro nessa linha: while ($linha=mysql_fetch_array($res)){ o ruim é que no WAMP tudo funcionava ¬¬ ehehe Compartilhar este post Link para o post Compartilhar em outros sites
willwalker 2 Denunciar post Postado Março 31, 2011 Quando acontece esse tipo de erro é porque a sua Query está errada. Reveja seu código, sério! Abraços Walker Compartilhar este post Link para o post Compartilhar em outros sites
douglaspossas 0 Denunciar post Postado Março 31, 2011 outro erro que está dando é esse: Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/site/public_html/agendaAlterar.php on line 145 agendaAlterar.php <?php include("conectar.php"); $sql= "SELECT * FROM agenda ORDER BY id DESC"; $res= mysql_query($sql,$con); echo "<table width='500' border='0'>"; while ($linha=mysql_fetch_array($res)){ $id=$linha['id']; $nome=$linha['nome']; $cidade=$linha['cidade']; $local=$linha['local']; $data=$linha['data']; $hora = $linha['hora']; echo "<tr> <td class='titg'><strong>$nome / </strong><span class='tit'>Data: $data $hora - <a class='link' href=agendaDeletar.php?id=$id>Excluir</a></span></td> </tr> <tr> <td class='tit'><strong>$local / </strong>$cidade</td> </tr> <tr> <td class='tit'> </td> </tr> "; } echo "</table>"; ?> no caso, da erro nessa linha: while ($linha=mysql_fetch_array($res)){ o ruim é que no WAMP tudo funcionava ¬¬ ehehe Na linha $res= mysql_query($sql,$con); Mude para $res= mysql_query($sql,$con) or die(mysql_error()); que ira exibir o que esta errado, o mesmo faça no arquivo de conexao após o mysql_conect() para saber se esta conectando! Compartilhar este post Link para o post Compartilhar em outros sites
Buthy 0 Denunciar post Postado Março 31, 2011 eita, achei o erro, era só um caracter invertido mesmo, e não estava conectando ao banco de dados :D agora está quase tudo certo hoje a noite só vou rever o codigo do login, que ainda nao esta 100% :D mto obrigado douglaspossas e willwalker! Compartilhar este post Link para o post Compartilhar em outros sites
willwalker 2 Denunciar post Postado Março 31, 2011 Isso mesmo, bom menino, viu que revendo o teu código tu mesmo corrige os erros ? Programas sempre são precisos, quem buga é o desenvolvedor. Como um amigo diz: Códigos não erram, quem erra são as pessoas! Compartilhar este post Link para o post Compartilhar em outros sites