ivsouza 0 Denunciar post Postado Agosto 15, 2010 Boa noite a todos! É minha primeira dúvida aqui no forum e gostaria muito de resolver um problema, com o MYSQL, que não grava nada apenas: deleta, altera, cria tabela, mas não grava, não insere nada. Possuo essas versões instaladas com Windows service pack 2: php- 5.3.3 mysql- 5.1.49 Apache- 2.2.16-win32-x86-no_ssl.msi Phpmyadmin- 5.1.49 Já pesquisei bastante em fóruns embora não obtive sucesso, pois os maiores problemas dos programadores eram com seus códigos que possuíam algum erro de digitação ou algum comando errado e não especificamente no mysql. Compartilhar este post Link para o post Compartilhar em outros sites
ESerra 744 Denunciar post Postado Agosto 16, 2010 Coloca um exeplo de script que você esteja usando para inserir dados no BD... Compartilhar este post Link para o post Compartilhar em outros sites
ivsouza 0 Denunciar post Postado Agosto 16, 2010 Obrigado por responder ESerra, qualquer script que é rodado no servidor eu não consigo gravar no banco pelo PHP, já até formatei o windows, segue um script: ****confirmar_login.php**** <?php $login=$_POST["login"]; $senha=$_POST["senha"]; //include "conectar_mysql.inc"; $conexao=mysql_connect("localhost","root","1010"); mysql_select_db("noticias"); $sql="SELECT * FROM usuarios where login='$login' and senha='$senha' "; $resultado=mysql_query($sql); $row=mysql_num_rows($resultado); if($row==0) { ?> <script language="JavaScript"> window.location.href="login.php"; </script> <?php } else { $pegar=mysql_fetch_array($resultado); $id=$pegar["id_usuarios"]; $nome=$pegar["nome"]; setcookie("id",$id); setcookie("nome",$nome); setcookie("login",$login); setcookie("senha",$senha); ?> <script language="JavaScript"> window.location.href="incluir_noticia.php"; </script> <?php } ?> ****incluida.php**** <html> <head> <title>Documento sem título</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> </head> <body> <?php include "verifica.php"; //$data=date("d/m/Y"); $titulo=$_POST["titulo"]; //echo "$titulo"; $mensagem=$_POST["mensagem"];//echo "$mensagem"; $id_usuario=$_COOKIE["id"]; //echo "$id_usuario"; $conexao=mysql_connect("localhost","root","1010"); mysql_select_db("noticias"); $sql="INSERT INTO noticias values"; $sql.="('null','$titulo','$mensagem',$id_usuario)"; $resultado=mysql_query($sql); echo "Notícia Incluida com Sucesso!"; ?> </body> </html> ****incluir_noticia.php**** <html> <head> <title>Documento sem título</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> </head> <body ><center> <?PHP include "verifica.php"; $nome=$_COOKIE["nome"]; ?><form action="incluida.php" method="post"> <table width="330" border="1"> <tr> <td colspan="2"><strong><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Bem vindo, <?php echo "$nome"; ?></font></strong></td> </tr> <tr> <td colspan="2"><strong><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Inclua a sua Notícia Aqui</font></strong></td> </tr> <tr> <td width="96"><strong><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Título :</font></strong></td> <td width="218"><strong><font size="2" face="Verdana, Arial, Helvetica, sans-serif"> <input type="text" name="titulo" size="45"> </font></strong></td> </tr> <tr> <td><strong><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Mensagem:</font></strong></td> <td><strong><font size="2" face="Verdana, Arial, Helvetica, sans-serif"> <textarea cols="45"rows="3" name="mensagem"></textarea> </font></strong></td> </tr> <tr> <td><input type="submit" value="Incluir"></td> <td> </td> </tr> </table> </form> </center> </body> </html> *****login.php***** <html> <head> <title>Portal de Notícias</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> </head> <body><center> <form action="confirmar_login.php" method="post"> <table width="330" border="1"> <tr align="center"> <td colspan="3"><strong><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Sistema Autenticado deNotícias</font></strong></td> </tr> <tr> <td width="64"><strong><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Login:</font></strong></td> <td colspan="2"><input type="text" name="login"></td> </tr> <tr> <td><strong><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Senha :</font></strong></td> <td width="173"><input type="password" name="senha"></td> <td width="71"><input type="submit" value="Enviar"></td> </tr> </table> </form> </center> </body> </html> ****noticia.php**** <?php include "../validar_session.php"; include "../Config/config_sistema.php"; echo "<tr>"; echo "<table border=\"1\" align=\"center\"cellspacing=\"2\" cellpadding=\"1\" width=\"300\">"; echo "<td width=\"30\" bgcolor=\"#cccccc\" valign=\"top\"><div align=\"center\"><font size=\"2\" face=\"bold\">TOTAL </div></td>"; echo "<td width=\"30\" bgcolor=\"#cccccc\" valign=\"top\"><div align=\"center\"><font size=\"2\" face=\"bold\">CONTRATO </div></td>"; echo "<td width=\"30\" bgcolor=\"#cccccc\" valign=\"top\"><div align=\"center\"><font size=\"2\" face=\"bold\">DIA</div></td>"; echo "<td width=\"30\" bgcolor=\"#cccccc\" valign=\"top\"><div align=\"center\"><font size=\"2\" face=\"bold\">MÊS</div></td>"; echo "<td width=\"30\" bgcolor=\"#cccccc\" valign=\"top\"><div align=\"center\"><font size=\"2\" face=\"bold\">CONCLUÍDO</div></td>"; echo "<td width=\"30\" bgcolor=\"#cccccc\" valign=\"top\"><div align=\"center\"><font size=\"2\" face=\"bold\">TÉCNICO</div></td>"; echo "<td width=\"30\" bgcolor=\"#cccccc\" valign=\"top\"><div align=\"center\"><font size=\"2\" face=\"bold\">Data da inclusão</div></td>"; echo "<td width=\"30\" bgcolor=\"#cccccc\" valign=\"top\"><div align=\"center\"><font size=\"2\" face=\"bold\">ALTERAR STATUS</div></td>"; echo "<td bgcolor=\"#cccccc\" ><a href=\"../logout.php\"><font size=\"1\" face=\"sans-serif\"><font color=\"#FF0000\">SAIR</font></a></div></td>"; echo "</tr>"; date_default_timezone_set( "America/Sao_Paulo" ); $sql_administrar_noticias = "SELECT id, contrato, dia, mes, foto, concluido, nome, data_hora FROM contratos ORDER BY id DESC"; $resultado_administrar_noticias = mysql_query($sql_administrar_noticias) or die (mysql_error()); if(mysql_num_rows($resultado_administrar_noticias) < 1) { echo "<tr>"; echo "<td width=\"50\" valign=\"top\" colspan=\"6\"><div align=\"center\">Nenhuma notícia encontrada</div></td>"; echo "</tr>"; } else { while ($linha=mysql_fetch_array($resultado_administrar_noticias)) { $id = $linha["id"]; $contrato = $linha["contrato"]; $dia = $linha["dia"]; $mes = $linha["mes"]; $foto = $linha["foto"]; $concluido = $linha["concluido"]; $nome = $linha["nome"]; $data_hora = date("d-m-Y"); if($publicado=="S") { $publicado = "Sim"; } else { $publicado = "Não"; } echo "<tr>"; echo "<td width=\"60\" valign=\"top\"><div align=\"center\">$id</div></td>"; echo "<td width=\"60\" valign=\"top\"><div align=\"center\">$contrato</div></td>"; echo "<td width=\"60\" valign=\"top\"><div align=\"center\">$dia</div></td>"; echo "<td width=\"60\" valign=\"top\"><div align=\"center\">$mes</div></td>"; echo "<td width=\"60\" valign=\"top\"><div align=\"center\"><font color=\"#FF0000\">$concluido</font></div></td>"; echo "<td width=\"60\" valign=\"top\"><div align=\"center\">$nome</div></td>"; echo "<td width=\"60\" valign=\"top\"><div align=\"center\">$data_hora</div></td>"; echo "<td width=\"60\" valign=\"top\"><div align=\"center\"><a href=\"alterar_noticia.php?id=$id\">Alterar</a></div></td>"; echo "</tr>"; } } ?> ****noticia_detalhada.php**** <html> <head> <title>Documento sem título</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> </head> <body> <?php $id_noticias=$_GET["id_noticias"];// echo "$id_noticias"; $conexao=mysql_connect("localhost","root","1010"); mysql_select_db("noticias"); $sql="SELECT * FROM noticias where id_noticias='$id_noticias'"; $resultado=mysql_query($sql); $pegar=mysql_fetch_array($resultado); echo "$pegar[mensagem]"; ?> </body> </html> ****verifica.php**** <?php $login=$_COOKIE["login"]; $senha=$_COOKIE["senha"]; $conexao=mysql_connect("localhost","root","1010"); mysql_select_db("noticias"); $sql="SELECT * FROM usuarios where login= '$login' and senha='$senha'"; $resultado=mysql_query($sql); $row=mysql_num_rows($resultado); if($row==0){ ?> <script language="JavaScript"> window.location.href="login.php"; </script> <?php } ?> ___FIM___ Compartilhar este post Link para o post Compartilhar em outros sites
Victor Cometti 8 Denunciar post Postado Agosto 16, 2010 nessa linha do incluida.php $resultado=mysql_query($sql); muda para essa $resultado = mysql_query( $sql ) or die ( mysql_error() ); pode ser que o usuário do banco n tenha privilégio para inserir Compartilhar este post Link para o post Compartilhar em outros sites
ivsouza 0 Denunciar post Postado Agosto 16, 2010 nessa linha do incluida.php $resultado=mysql_query($sql); muda para essa $resultado = mysql_query( $sql ) or die ( mysql_error() ); pode ser que o usuário do banco n tenha privilégio para inserir Não vai, o mais estranho é que quando instalo o server pelo xampp funciona normal, mas quando instalo sem ele não grava. Então como havia dito não é problema com o código e sim alguma configuração dos serviços: apache ou php ou mysql ou phpmyadmin, que instalei separados dessa vez. Lembrando que o usuário tem privilégios já foi visto isso. Compartilhar este post Link para o post Compartilhar em outros sites
Matias Rezende 50 Denunciar post Postado Agosto 16, 2010 Certo... Vamos eliminar de vez o problema do código, porque se realmente for problema do servidor, seu tópico será movido para o fórum de servidores Web. Execute o código abaixo: <?php ini_set ( 'display_errors', true ); error_reporting ( E_ALL ); $mysqli = new mysqli ( 'localhost', 'root', '1010', 'forum' ); $mysqli->query ( "INSERT INTO noticias VALUES (null,'titulo','mensagem',1)" ); if (! empty ( $mysqli->error )) { printf ( 'Erros foram encontrados - %s', $mysqli->error ); } else { $resultado = $mysqli->query ( sprintf ( 'SELECT * FROM noticias WHERE id_noticias = %d', $mysqli->insert_id ) ); $linha = $resultado->fetch_assoc (); echo 'Foi inserido com sucesso a notícia abaixo. <pre>'; print_r ( $linha ); echo '</pre>'; } Poste EXATAMENTE o que aparecer na tela. Carlos Eduardo Compartilhar este post Link para o post Compartilhar em outros sites
ivsouza 0 Denunciar post Postado Agosto 16, 2010 Desculpe a demora, sei que estão tentando me ajudar, agradeço muito! Segue o resultado na tela: Erros foram encontrados - No database selected Compartilhar este post Link para o post Compartilhar em outros sites
Matias Rezende 50 Denunciar post Postado Agosto 17, 2010 Erro meu. Na chamada da classe, no quarto parâmetro deve ser colocado o nome do seu banco de dados. Ali onde esta escrito "fórum". Execute novamente e poste o resultado. Carlos Eduardo Compartilhar este post Link para o post Compartilhar em outros sites
ivsouza 0 Denunciar post Postado Agosto 17, 2010 Erro meu. Na chamada da classe, no quarto parâmetro deve ser colocado o nome do seu banco de dados. Ali onde esta escrito "fórum". Execute novamente e poste o resultado. Carlos Eduardo "Magina".. segue o resultado: Foi inserido com sucesso a notícia abaixo. Array ( [id_noticias] => 7 [titulo] => titulo [mensagem] => mensagem [id_usuario] => 1 ) Erro meu. Na chamada da classe, no quarto parâmetro deve ser colocado o nome do seu banco de dados. Ali onde esta escrito "fórum". Execute novamente e poste o resultado. Carlos Eduardo "Magina".. segue o resultado: Foi inserido com sucesso a notícia abaixo. Array ( [id_noticias] => 7 [titulo] => titulo [mensagem] => mensagem [id_usuario] => 1 ) Puxa inseriu, mas porquê? Não deu certo com o outro código? Compartilhar este post Link para o post Compartilhar em outros sites
Alaucho 5 Denunciar post Postado Agosto 17, 2010 E ae ivsouza, beleza? Então cara... Como o exemplo do Matias Rezende funcionou, sendo os dados adicionados, é sinal que seu servidor está operando normalmente. Pelo que vi, o problema parece ser apenas na sintaxe. Note que no seu código, quando você mandou inserir os dados, você considerou que o campo "id_noticia" seria uma string: $sql="INSERT INTO noticias values"; $sql.="('null','$titulo','$mensagem',$id_usuario)"; Porém, pelo próprio exemplo do Matias, ele parece estar configurado como INTEGER. Remove as aspas ali do "null", que deve funfar: $sql="INSERT INTO noticias values"; $sql.="(null,'$titulo','$mensagem',$id_usuario)"; Abraço Compartilhar este post Link para o post Compartilhar em outros sites