Ir para conteúdo
Fórum Script Brasil
  • 0

Código PHP não compila


Gustavospcosta

Pergunta

boa noite!

o trabalho proposto para a faculdade é fazer uma página HTML com formulários que grave as informações num banco de dados SQL.

instalei o XAMPP no meu PC, criei um banco de dados chamado impressos, dentro deste uma tabela chamada livros com três campos: codigo VARCHAR (10), nome VARCHAR (10), autor VARCHAR (10).

criei uma página index.html:

<html>
<head>
<title> Boa Leitura.ORG - SysLeitura </title>
</head>
<body>
<h1 align="center">Bem-Vindos ao SysLeitura</h1>
<p align="center">Para inserir livros na nossa blibioteca, use o formulário abaixo.</p>
<table width="768" border="0" align="center">
  <form action="incluirlivro.php" method="post">
  <tr>
    <td colspan="4"><div align="center">
      <h1>Livros</h1>
    </div></td>
  </tr>
  <tr>
    <td width="16%">Nome:</td>
    <td width="84%" colspan="3"><label for="textfield"></label>
    <input name="nome" type="text" id="nome" size="60"></td>
  </tr>
    <tr>
    <td>Código:</td>
    <td colspan="3"><label for="textfield4"></label>
    <input name="codigo" type="text" id="codigo" size="60"></td>
  </tr>
  <tr>
    <td>Autor:</td>
    <td colspan="3"><label for="textfield5"></label>
    <input name="autor" type="text" id="autor" size="60"></td>
  </tr>
  <tr>
    <td colspan="4"><div align="center"></div></td>
  </tr>
  <tr>
    <td colspan="4"><div align="center">
      <input type="submit" name="button" id="button" value="Enviar">
      <input type="reset" name="button2" id="button2" value="Resetar">
    </div></td>
  </tr>
</form>
</table>
</body>
</html>
criei uma página incluirlivro.php:
<?php
include("conexao.php");
$nome = $_POST['nome'];
$codigo = $_POST['codigo'];
$autor = $_POST['autor'];
$sql = "INSERT INTO livros (nome, codigo, autor) VALUES ('$nome', '$codigo', '$autor')";
$exe_sql = mysql_query($sql) or die(mysql_error());
header("Location: retorno.php");
?>
e uma página conexao.php:
<?php
$host = "localhost";
$usuario = "root";
$senha = "root";
$banco = mysql_connect($host, $usuario, $senha) or die(mysql_error());
mysql_select_db("impressos", $banco) or die(mysql_error());
?>

página para inserção de dados:

oqiour.jpg

ao apertarmos o botão ENVIAR, os dados inseridos, ele não executa nada, logo temos a seguinte tela no browser:

drcnj9.jpg

ele não grava, não executa. sei que o problema deve ser bobo, mas não tenho idéia da onde seja.

obrigado desde já.

Link para o comentário
Compartilhar em outros sites

18 respostass a esta questão

Posts Recomendados

  • 0

Gustavospcosta,bom dia.

Cara,o seu script está normal. E não,não é necessário JS para chamar a 'função' incluirlivro.php, pois é uma página - Logo,pode ser feito no action.

O problema pode ser no seu servidor. Como não encontrei nenhum erro aparente,rodei seu script na minha máquina,e funcionou normalmente.

Bom,tente o seguinte:

Primeiro,verifique se o PHP está rodando - crie e acesse um arquivo com o conteúdo

<? phpinfo; ?>

Se forem mostradas algumas informações então seu servidor está interpretando normalmente o PHP.

Caso contrário,o PHP não está rodando. Pondere reinstalar o xampp ou wamp,pois pode ser que tenha ocorrido alguma falha durante a instalação,ou alguma configuração ou macete que eu desconheça deva ser feito nesses casos.

Abraços.

Link para o comentário
Compartilhar em outros sites

  • 0

Alem das dicas do Hugo

Abra o Xampp

Click no Phpmyadmin

Click em privilegios

Selecione usuario root , servidor Localhost

Editar privilegios.

Veja esta marcado o checkbox,

selec, insert, update, delete

Se não tiver marque os 4, e rode a tua inclusao.

****

Apos isto no PhpmyAdmin, Verifique se não tem registros a tabela livros, no seu Banco Impressos

Selecione o banco impressos

depois a tabela livros

e vejas esta tabela não tem registros.

Um video que me ajudou muito , a fazer testes, quando a gente comeca fazer um cadastro de PHP foi, este.

Que você podera fazer teste basicos, na tua inclusao, e você sabera se esta tudo OK.

Link do Video.

http://www.youtube.com/watch?v=2Cr-1NA5cIs

Editado por Alceu13
Link para o comentário
Compartilhar em outros sites

  • 0
Alem das dicas do Hugo

Abra o Xampp

Click no Phpmyadmin

Click em privilegios

Selecione usuario root , servidor Localhost

Editar privilegios.

Veja esta marcado o checkbox,

selec, insert, update, delete

Se não tiver marque os 4, e rode a tua inclusao.

****

Apos isto no PhpmyAdmin, Verifique se não tem registros a tabela livros, no seu Banco Impressos

Selecione o banco impressos

depois a tabela livros

e vejas esta tabela não tem registros.

Um video que me ajudou muito , a fazer testes, quando a gente comeca fazer um cadastro de PHP foi, este.

Que você podera fazer teste basicos, na tua inclusao, e você sabera se esta tudo OK.

Link do Video.

http://www.youtube.com/watch?v=2Cr-1NA5cIs

privilégios do usuário root:

8vqivr.jpg

banco de dados impressos, tabela livros, com nenhum registro:

2i27wc4.jpg

tudo na mesma!

PS: obrigado à todos que responderam ao tópico.

Link para o comentário
Compartilhar em outros sites

  • 0

Na figura 1

no servidor Localhost ,esta sem senha!!! conforme figura 1

// sua conexao.php
<?php
$host = "localhost";
$usuario = "root";
$senha = "";  // esta root senha,  aqui você deixa em branco, para  ve se funciona
$banco = mysql_connect($host,$usuario,$senha) or die("Não conectei Servidor"); // msg erro,no video 7min.teste este cod.
mysql_select_db("impressos", $banco) or die(mysql_error());
?>

Editado por Alceu13
Link para o comentário
Compartilhar em outros sites

  • 0
Na figura 1

no servidor Localhost ,esta sem senha!!! conforme figura 1

// sua conexao.php
<?php
$host = "localhost";
$usuario = "root";
$senha = "";  // esta root senha,  aqui você deixa em branco, para  ve se funciona
$banco = mysql_connect($host,$usuario,$senha) or die("Não conectei Servidor"); // msg erro,no video 7min.teste este cod.
mysql_select_db("impressos", $banco) or die(mysql_error());
?>

Alceu, não entendi aonde na figura 1 diz que o usuário root no localhost esta sem senha.

eu setei a senha do root para root.

:wacko:

Link para o comentário
Compartilhar em outros sites

  • 0

Desculpe eu interpetrei errado, o final da imagem figura1.

já que você diz que cadastrou uma senha, root, no Servidor, E é provavel, se deixar sem senha,era dar o erro de conecao com o Servidor.

Sendo assim :

Desconsidere a minha resposta anterior.

Editado por Alceu13
Link para o comentário
Compartilhar em outros sites

  • 0

Tem tudo a haver.

Apache e MySql não carregou,!!!

No icone xampp na area de trabalho, Control cpanel xampp, ou no menu iniciar, você clica em start no Apache, e mysql

Aki neste tópico,

você tem a instalacao e configuracao do Xampp

http://scriptbrasil.com.br/forum/index.php?showtopic=169459

ou neste

Tutorias aki no forum Curso de PHP

Editado por Alceu13
Link para o comentário
Compartilhar em outros sites

  • 0
Tem tudo a haver.

Apache e MySql não carregou,!!!

No icone xampp na area de trabalho, Control cpanel xampp, ou no menu iniciar, você clica em start no Apache, e mysql

Aki neste tópico,

você tem a instalacao e configuracao do Xampp

http://scriptbrasil.com.br/forum/index.php?showtopic=169459

Alceu13, obrigado. Vou seguir este tutorial assim que chegar em casa.

Eu quando vi este erro, eu pesquisei algo relacionado com o fato do MySQL estar com status DESACTIVATED, mas não achei NADA!

Vou seguir o tutorial que você me passou passo-a-passo e vamos ver.

Assim que terminar postarei aqui!

Link para o comentário
Compartilhar em outros sites

  • 0

galera, nada feito!

estou usando outro PC (as memórias do meu PC queimaram) com Windows XP, instalei o XAMPP 1.7.7 e continua dando o MESMO PROBLEMA!

desta vez o status do MySQL é ACTIVATED, como na imagem abaixo:

2dlrnes.jpg

Já mandei rodar os módulos Apache e MySQL como Serviço e de nada adiantou.

Vou tentar usar o EasyPHP, vou deixar o XAMPP um pouco de lado.

Obrigado pela ajuda de todos, mas estou ficando desanimado...

Link para o comentário
Compartilhar em outros sites

  • 0

No seu Menu xammp PHP abaixo de PHPinfo()

você tem

cd Colection

clica nele incluir um registro

Veja se inclui o registro.

ou

phone book

clica nele e tenta adicionar um registro.

Caso desista do xampp

Eu instalei do Wamp Server 20 no windows xp

e deu tudo certo assistindo o video abaixo

Se preferir Instalar Wamp Server local Segue Video

http://www.youtube.com/watch?v=7fjiuWLNx1k

Apos a instalacao click Wamp no icone na barra ferramentas, e selecione localhost

e abriu normalmente

Crie uma pasta em test

C:\wamp\www\test

crie o banco de dados Test, inserir as tabelas, e tudo funcional normal inclusao alteracao exclusao.

Editado por Alceu13
Link para o comentário
Compartilhar em outros sites

  • 0
como você ta acessando essas paginas ?

as páginas de configuração eu acesso normal: acesso localhost no browser e faço login como usuário: root, senha: root.

eu copio a pasta com meu HTML e meus PHPs para a pasta WWW ou HTDOCs e abro pelo Google Chrome ou Internet Explorer 8.

galera, não gostei do EasyPHP: achei muito confuso seu menu de acesso. estou instalando o WAMP para tentar novamente.

PS: Uso um PC com Windows XP SP3, sem anti-vírus, sem firewall, e recém-instalado.

Link para o comentário
Compartilhar em outros sites

  • 0

vamos lá, tudo de novo, desta vez com WAMP SERVER 2.1 com Windows XP:

INDEX.HTML

<?php
include "conexao.php"
?>
<html>
<head>
<title> TESTE CADASTRO </title>
</head>
<body>
<form name="cadastrolivros" method="post" action="gravacao.php">
<h1>Bem Vindo ao SysLeitura</h1>
<p>para cadastrar os livros, use o formulário abaixo:</p>
    <table>
        <tr>
            <td>Nome Livro:</td>
            <td><input type="text" name="nomelivro"/></td>
        <tr>
        <tr>
            <td>Autor:</td>
            <td><input type="text" name="autor"/></td>
        <tr>
        <tr>
            <td>Codigo:</td>
            <td><input type="text" name="codigo"/></td>
        <tr>
        <tr>
            <td colspan="2" align="right"><input type="submit" value="Enviar"/></td>
        <tr>
    </table>    
</body>
</html>
CONEXAO.PHP
<?php
$host = "localhost";
$user = "gus";
$password = "gus";
$bank = "impressos";
$conexao = mysql_connect($host, $user, $password) or die (mysql_error());
mysql_select_db($bank) or die (mysql_error()); 
?>
GRAVACAO.PHP
<?php
include "conexao.php";
?>
<?php
$nomelivro=$_POST['nomelivro'];
$autor=$_POST['autor'];
$codigo=$_POST['codigo'];
$sql=mysql_query ("INSERT INTO livros (nomelivro, autor, codigo) VALUES ('$nomelivro', '$autor', '$codigo')"); 
?>
<html>
<head>
<title>Inserir Livro</title>
</head>
<body>
</body>
</html>

criei um usuário: gus, senha: gus com todos os privilégios:

dzynty.jpg

e continua dando o mesmo problema: ao invés de executar o código ele imprime no browser o script PHP.

Editado por Gustavospcosta
Link para o comentário
Compartilhar em outros sites

  • 0

No phpmyadmin Crie o banco Impressos

e a tabela livros

CREATE TABLE `livros` (
  `id` int(6) NOT NULL auto_increment,
  `nomelivro` varchar(80) default NULL,
  `autor` varchar(100) default NULL,
  `codigo` varchar(30) default NULL,
  PRIMARY KEY  (`id`)
) ENGINE=InnoDB  DEFAULT CHARSET=latin1 AUTO_INCREMENT=3;

A pasta

Em

C:\wamp\www\

crie a pasta livros

Na pasta livros

Coloquei os arquivos, conexao.php, gravacao.php, index.php

C:\wamp\www\livros

No navegador digitei o endereco.

http://localhost/livros/index.html

chamei o index.html

Acabei de cadastra um livro

com o seu codigo e deu certo

aki não da erro

http://desmond.imageshack.us/Himg267/scale...amp;res=landing

Tem que funcionar.

Editado por Alceu13
Link para o comentário
Compartilhar em outros sites

  • 0

CONSEGUI GALERA!

é o seguinte: acessei o INDEX.HTML pelo link do localhost como na imagem abaixo:

2rom7uq.jpg

ai funcionou perfeitamente.

anteriormente eu estava acessando o INDEX.HTML chamando o browser via Notepad++, como na figura abaixo

dotkdt.jpg

ou abria a pasta WWW (para WAMPSERVER) ou HTDOCS (para XAMPP) via Windows Explorer e lançava via browser:

34yb2hk.jpg

acho que era esse o problema, rs.

então todo script que eu fizer tenho que acesar pelo link YOUR PROJECTS no WAMPSERVER?

obrigado à todos pelas respostas. assim que comprar as memórias para o meu outro PC, vou formata-lo e usar o WAMPSERVER de novo e vamos ver se funciona.

Link para o comentário
Compartilhar em outros sites

  • 0

Imaginei que fosse esse o problema, pois ao acessar um arquivo.php ou outra extensão ele deve retorna ero, não abrir, tentar fazer o download mas jamais mostra o que tem dentro como aconteceu com você... e como o Index abrir e era HTML fazia sentido...

bem td certo, que bom que resolveu.

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,5k
×
×
  • Criar Novo...