Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Jader Greiner

Banco de Dados MySQL com PHP

Recommended Posts

Boa tarde! Estou começando a programar em PHP.. ou ao menos tentando.. achei esse forum de vocês e gostei do trabalho, profissional e sério...

 

Comprei um livro da Editora Digerarti (PHP para profissionais). Livro muito bom, que ensina passo a passo a criar uma aplicação em PHP bem simples, uma agenda telefônica, porem deve estar alguma coisa editada errada no livro, pois estou seguindo tudo conforme esta no livro e o aplicativo nao funciona.

 

Bem, o primeiro passo foi criar um banco de dados chamado agenda, e duas tabelas, com nome de cidades e contato. Até aí tudo bem, criei o layout da pagina e até aí tudo bem. Porém já na primeira função não funciona, chamada de cadastrar cidade.

 

Vou mandar o codigo da pagina "cadastra_cidade.php" para voces darem uma analisada. dentro desta pagina ele busca outras duas funçõe, chamadas de "executa_sql.php" e "conexao.php" que mando o codigo também.

 

-EXECUTA_SQL.PHP
<?php
function executa_sql ($sql,$conexao)
{if (empty($sql) OR ! ($conexao))
return 0;
if (!$resposta=@mysql_query ($sql,$conexao)))
{echo "<p align='center'> Erro na execução do comando SQL! </p>";
exit;}
return $resposta; }
?>

-CONEXAO.PHP
<?php
$host="localhost";
$usuario="admin";
$senha="admin"
$nome_banco="agenda";
if(!$conexao = @mysql_connect("$host","$usuario","$senha")))
{echo "<p align='center'> Erro conectando ao MySql! </p> ";
exit;}
if (!($nome_banco=mysql_select_db("$nome_banco",$conexao)))
{echo "p align='center'> Erro selecionando a base de dados
$nome_banco</p>";
exit;}
?>

cadastra_cidade.php

<HTML>
<HEAD>
 <TITLE>Cadastro de cidades</TITLE>
</HEAD>
<BODY>
<?php if ($_POST[acao] !="Cadastrar") {?>
<font face="Arial" size="3"> <b> Cadastro de Cidades </b> </font>
	  <form name="cadastra_cidade" method="post" action="<?php $_SERVER[PHP_SELF]?>">
<font face="arial" size="2"> <b>
Cidade: <input type="text" name="fnome_cidade" size="30">
<br> Estado:<input type="text" name="festado" size="30">
<br> Pais:<input type="text" name="fpais" size="30">
<input type="submit" value="cadatrar" name="acao">
<input type="reset" value="cancelar" name="B2"> </font>
</form>
<?php }
else if ($_POST[acao] =="Cadastrar") {
If ((Empty($POST[fnome_cidade])) or (Empty ($_POST [festado])) or (Empty ($_POST [fpais])) )
{echo " <font face='arial' size='2' color='red'> <b> Erro! </b> </font> <br> ";
echo "<form> <input type='button' value ='voltar'
onClick='history.go (-1)'> </td> </form>";
} else {
include "conexao.php";
include "executa_sql.php";
$sql ="INSERT INTO cidade(nome_cidade,estado,pais)
VALUES ('$_POST [fnome_cidade]','$POST [festado]','$POST [fpais]');";
executa_sql ($sql,$conexao);
echo "<br>";
echo "<font face='arial' size='2' color='green'> <b> Cadastro realizado! </b> </font> <br> ";
echo "<font face='arial' size='2' <a href='principal.php'> <Pagina Inicial </a> </font>";
}} ?> </font>
</BODY>
</HTML>

Por favor da uma olhada e ve se encontra algum erro. A pagina com o formulario abre tudo normal, porem quando clico em cadastrar da mensagem de erro dizendo

"Não foi possível localizar 'file:///c:/apache/agenda/%3c?php $_SERVER[php_SELF]?>;

Compartilhar este post


Link para o post
Compartilhar em outros sites

O código que você disponibilizou está com vários erros de digitação SINTAXE, abaixo está o código exatamente como está dispoto no livro "PHP para profissionais".

 

 

///// inicio - cadastra_cidade.php ////////

 

<HTML>

<HEAD>

<TITLE>Cadastro de cidades</TITLE>

</HEAD>

<BODY>

<?

if ($_POST[acao] != "Cadastrar"){

?>

<font face="Arial" size="3"> <b> Cadastro de Cidades </b> </font>

<form name="cadastra_cidade" method="post" action="<? $_SERVER[php_SELF]; ?>">

<font face="arial" size="2">

<b>Cidade: <input type="text" name="fnome_cidade" size="30"><br>

Estado:<input type="text" name="festado" size="30"><br>

Pais:<input type="text" name="fpais" size="30"><br>

<input type="submit" value="Cadastrar" name="acao"><input type="reset" value="cancelar" name="B2">

</font>

</form>

<?

 

} else if ($_POST[acao] == "Cadastrar"){

 

if ((empty($_POST[fnome_cidade])) or (empty($_POST[festado])) or (empty($_POST[fpais]))){

 

echo "Todos os campos do formulário devem ser preenchidos"; // adicionei este echo para retornar ao usuário o porque do erro;

 

echo "<font face='arial' size='2' color='red'><b> Erro! </b></font><br>";

echo "<form> <input type='button' value ='voltar' onClick='history.go (-1)'> </td> </form>";

} else {

include "conexao.php";

include "executa_sql.php";

$sql ="INSERT INTO cidade(nome_cidade,estado,pais) VALUES ('$_POST[fnome_cidade]','$_POST[festado]','$_POST[fpais]');";

executa_sql ($sql,$conexao);

echo "<br>";

echo "<font face='arial' size='2' color='green'> <b> Cadastro realizado! </b> </font> <br> ";

echo "<font face='arial' size='2' <a href=' principal.php'> <Pagina Inicial </a> </font>";

}

}

?> </font>

</BODY>

</HTML>

///// fim - cadastra_cidade.php ////////

 

///// inicio - conexao.php ////////

<?

$host = "localhost";

$usuario = "admin"; //usuário de seu banco de dados

$senha = "admin"; //senha de seu banco de dados

$nome_banco="agenda"; //nome do banco que deseja conectar

 

if (!$conexao = @mysql_connect("$host","$usuario","$senha")){

echo 'Erro número: '.mysql_errno().'<br>Descrição: '.mysql_error(); // adicionei este echo para retornar o número e descrição do erro informado pelo mysql;

echo "<p align='center'> Erro conectando ao MySql! </p> ";

exit;

}

if (!($nome_banco=mysql_select_db("$nome_banco",$conexao))){

echo 'Erro número: '.mysql_errno().'<br>Descrição: '.mysql_error(); // adicionei este echo para retornar o número e descrição do erro informado pelo mysql;

echo "p align='center'> Erro selecionando a base de dados $nome_banco</p>";

exit;

}

?>

///// fim - conexao.php ////////

 

///// inicio - executa_sql.php ////////

<?

function executa_sql ($sql,$conexao){

if (empty($sql) OR !($conexao)) return 0;

if (!($resposta=@mysql_query($sql,$conexao))){

echo 'Erro número: '.mysql_errno().'<br>Descrição: '.mysql_error(); // adicionei este echo para retornar o número e descrição do erro informado pelo mysql;

echo "<p align='center'> Erro na execução do comando SQL! </p>";

exit;

}

return $resposta;

}

?>

 

///// fim - executa_sql.php ////////

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.