Jump to content


Photo

Problema Com Banco De Dados.... Help!


  • Faça o login para participar
7 replies to this topic

#1 JAL

JAL

    Novato no fórum

  • Usuários
  • 18 posts
  • Sexo:Não informado

Posted 10/12/2003, 21:14

pessoal, estamos aí novamente...
olha só,
é estranho o q está acontecendo no meu Banco de Dados...
a Tabela "noticias" já foi criada em meu Banco de Dados, isso q só adicionei o código e o SQL fez o resto... todos os arquivos foram criados e mandados para o ar: no caso... cadastra.php, inserir.php, noticias.php, controle.php, excluir.php, alterar.php e alterar_db.php
fiz todas as alterações necessárias em todos os arquivos, porém, quando tento cadastrar uma notícia, a página seguinte até abre, no caso a página "inserir.php, só q uma página em branco como c nada tivesse ali.... eu até consigo entrar na página onde tem o formulário para cadastrar a notícias, o problema mesmo é q a notícia parece não ir para o banco de dados...

o q pode estar acontecendo?



os arquivos estão todos configurados direitinho, porém, quando tento cadastrar uma notícia, a página seguinte até abre, no caso a página "inserir.php, só q uma página em branco....

#2 [tiago]

[tiago]

    Taekwondo SP

  • Usuários
  • 193 posts
  • Sexo:Não informado

Posted 11/12/2003, 00:36

da uma olhada no script da inserir.php, pode ser que alguma variavel esteja errada... ou algo assim

posta o código fo form e o código da inserir ai pra gente ver...

falow
Tiago Mendes Cold Fusion

||CF Studio RIA - cfstudioria.com.br||

#3 [tiago]

[tiago]

    Taekwondo SP

  • Usuários
  • 193 posts
  • Sexo:Não informado

Posted 11/12/2003, 00:37

da uma olhada no script da inserir.php, pode ser que alguma variavel esteja errada... ou algo assim

posta o código fo form e o código da inserir ai pra gente ver...

falow
Tiago Mendes Cold Fusion

||CF Studio RIA - cfstudioria.com.br||

#4 JAL

JAL

    Novato no fórum

  • Usuários
  • 18 posts
  • Sexo:Não informado

Posted 11/12/2003, 11:57

,11 Dec 2003, 01:37 ] da uma olhada no script da inserir.php, pode ser que alguma variavel esteja errada... ou algo assim

posta o código fo form e o código da inserir ai pra gente ver...

falow

vamos lá então,
vou postar os códigos mais importantes, acho q assim fica mais fácil de resolver o problema...
primeiro, a tabela "noticias" q foi inserida no meu Banco de Dados... simplesmente peguei esse código abaixo e adicionei no SQL sem fazer nenhuma alteralção, até pq acho q não se faz necessário...

CREATE TABLE noticias (
id int(5) NOT NULL auto_increment,
nome char(30) NOT NULL ,
sobrenome char(30) NOT NULL ,
cidade char(50) NOT NULL ,
estado char(2) NOT NULL ,
email char(80) ,
data date NOT NULL,
hora time NOT NULL ,
titulo char(100) NOT NULL ,
subtitulo char(200) ,
texto text NOT NULL ,
ver char(3) DEFAULT 'off' ,
PRIMARY KEY (id),
UNIQUE id (id)
);
___________________________________________________________________

segue abaixo o código do arquivo "cadastra.php", formulário responsável pelo cadastro das notícias...

<?php

$data = date("Y-m-d");
$hora = date("H:i:s");
$novadata = substr($data,8,2) . "/" .substr($data,5,2) . "/" . substr($data,0,4);
$novahora = substr($hora,0,2) . "h" .substr($hora,3,2) . "min";

echo "<h1>Sistema de Cadastro de Notícias</h1>";
echo "<hr><br>";
echo "<form action='inserir.php' method='post'>";
echo "Nome:<input name='nome' type='text' size=30> *<br>";
echo "Sobrenome:<input name='sobrenome' type='text' size=30> *<br>";
echo "Cidade:<input name='cidade' type='text' size=30> *<br>";
echo "Estado:<i>(Exemplo: SP, RS, BA)</i><input name='estado' type='text' size=5> *<br>";
echo "Email: <i>(Exemplo: feitosac@yahoo.com)</i><input name='email' type='text' size=30><br><br>";
echo "Título do Texto:<input name='titulo' type='text' size=30> *<br>";
echo "Subtítulo do Texto:<textarea name='subtitulo' rows=5 cols=30></textarea><br>";
echo "Texto:<textarea name='texto' rows=10 cols=30></textarea> *<br>";
echo "<input name='data' type='hidden' value='$data'<>input name='hora' type='hidden' value='$hora'>";
echo "<input type='submit' value='Cadastrar'>";
echo "</form>";
echo "<br><hr>";
echo "<i>Campos marcados com <b>*</b> são obrigatórios no cadastro.<br>";
echo "<b>Observação</b>: Será inserido no seu cadastro a data atual, bem como a hora atual do cadastro<br>";
echo "Data: $novadata - Hora: $novahora<br>";

?>
___________________________________________________________________

Segue abaixo o arquivo "inserir.php", script q mandará a notícia para o Mysql automaticamente...

<?php

//Vamos definir as variáveis de data e hora
//para inserção no banco de dados

//Agora com as variáveis de data e hora criadas
//vamos criar uma variável especial para a querie sql

$sql = "INSERT INTO noticias (nome, sobrenome, cidade, estado, email, data, hora,
titulo, subtitulo, texto) VALUES ('$nome', '$sobrenome', '$cidade', '$estado',
'$email', '$data', '$hora', '$titulo', '$subtitulo', '$texto')";

//Agora é hora de contatar o mysql

$conexao = mysql_connect("mysql.webcindario.com", "username", "minhasenha")
or die ("Configuração de Banco de Dados Errada!");

//Substitua os valores acima caso não esteje de acordo com sua máquina
//Selecionando o banco de dados...

$db = mysql_select_db("noticias")
or die ("Banco de Dados Inexistente!");

//Inserindo os dados

$sql = mysql_query($sql)
or die ("Houve erro na gravação dos dados, por favor, clique em voltar e verifique os campos obrigatórios!");

echo "<h1>Cadastro efetuado com sucesso!</h1>";

?>

___________________________________________________________________

Segue abaixo o arquivo "noticias.php", local onde aparecerá as noticias...

<?php

//Vamos precisar contar o MySQL novamente

$conexao = mysql_connect("mysql.webcindario.com","username","minhasenha");
$db = mysql_select_db("noticias");

//Agora é realizar a querie de busca no banco de dados

$sql = "SELECT * FROM noticias WHERE ver = 'on' ORDER BY id DESC LIMIT 15";

// Irá selecionar as últimas 15 notícias inseridas

// O curioso aqui, é que ele só irá selecionar os campos onde
// estiver o ver=on, isto foi discutido logo atrás, como um
// controle de notícias pelo webmaster
// Por padrão o MySQL colocou off, mas o webmaster terá que
// revisar as notícias e alterar o campo ver para as que quiser validar.

$resultado = mysql_query($sql)
or die ("Não foi possível realizar a consulta ao banco de dados");

// Agora iremos "pegar" cada campo da notícia
// e organizar no HTML

while ($linha=mysql_fetch_array($resultado)) {

$id = $linha["id"];
$nome = $linha["nome"];
$sobrenome = $linha["sobrenome"];
$cidade = $linha["cidade"];
$estado = $linha["estado"];
$email = $linha["email"];
$data = $linha["data"];
$hora = $linha["hora"];
$titulo = $linha["titulo"];
$subtitulo = $linha["subtitulo"];
$texto = $linha["texto"];
$ver = $linha["ver"];

$novadata = substr($data,8,2) . "/" .substr($data,5,2) . "/" . substr($data,0,4);
$novahora = substr($hora,0,2) . "h" .substr($hora,3,2) . "min";

echo "<b>Código da Notícia</b>: $id";
echo "<br>";
echo "Autor: $nome $sobrenome - ($email)";
echo "<br>";
echo "Cidade: $cidade - Estado: $estado";
echo "<br>";
echo "Data: $novadata - Horário: $novahora";
echo "<br>";
echo "Título da Notícia: $titulo";
echo "<br>";
echo "Subtítulo da Notícia: <i> $subtitulo </i>";
echo "<br>";
echo "Notícia: $texto";
echo "<br>";
echo "Validado pelo Webmaster: ";
if ($ver=on) { echo "Sim"; } else { echo "Não"; }
echo "<hr>";

}

?>
___________________________________________________________________

Bom, acho q dando uma analizada nesses arquivos dá pra ter uma noção do erro... acredito eu!
tenho outros códigos aqui, controle.php e tal... c tu quiser posso te passar!

#5 JAL

JAL

    Novato no fórum

  • Usuários
  • 18 posts
  • Sexo:Não informado

Posted 12/12/2003, 11:40

RESOLVI O PROBLEMA!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
ERA NO CÓDIGO MESMO.....
AGORA AS NOTÍCIAS QUE CADASTRO NO FORMULÁRIO VÃO NORMALMENTE PRO BANCO DE DADOS, JÁ CONSIGO VISUÁLIZA-LAS E PAH...
AGORA, NA RETA FINAL, GOSTARIA MUITO Q ME AJUDASSE A PERSONALIZAR ESSAS NOTÍCIAS, PRA FICAR MAIS TRI NO SITE....
SABE, O SITE: http://www.casemodbr.com/ ??
EU GOSTARIA DE TER AQUELE SISTEMINHA NO MEU SITE... MAS NÃO FAÇO A MÍNIMA IDÉIA DE COMO ORGANIZAR DIREITINHO AS NEWS...
COMO POSSO PROCEGUIR??

#6 [tiago]

[tiago]

    Taekwondo SP

  • Usuários
  • 193 posts
  • Sexo:Não informado

Posted 12/12/2003, 13:51

ve se ajuda...

essa aqui é a que vai deixar seu site igual ao do casemod, mas tem que ajustar la embaixo no echo para que link para a página da noticia, to com a cabeça meio quente agora, mas creio que esteje certo
<?php
$conexao	=	@mysql_connect ($host, $login, $senha);//conecta
$selecao	=	@mysql_select_db ($database);//seleciona o banco

$sql = @mysql_query("SELECT * FROM $tabela");//seleciona a tabela
while($linha = @mysql_fetch_array($sql)) 
{
$titulo = $linha["titulo"];//resgata o campo titulo no mysql
$id = $linha ["id"];//resgata o id no mysql
$data = date("d/m/Y");//data
$hora = date("h:i");//hora
//ira mostrar em sua pagina neste modo

echo "<font face=\"verdana\" size=\"1\"><b>$data às $hora</b> - <a href = \"$id\">$titulo</a></font>";
}
?>
depois é só colocar o include
<? include "nome_da_pagina.php" ?>

não testei pois fiz correndo aki, testa ai, se der erros me fale
espero ter ajudado

fui

Edição feita por: [tiago], 12/12/2003, 13:57.

Tiago Mendes Cold Fusion

||CF Studio RIA - cfstudioria.com.br||

#7 blo0d

blo0d

    legal isso.. =X

  • Usuários
  • 154 posts
  • Sexo:Não informado

Posted 12/12/2003, 15:08

Os comentários, teriam que ter uma outra tabeLa... (eu acho).. mas para clicar e ir para a notícia faça isso:

noticias.php
<? 
$conexao = mysql_connect("mysql.webcindario.com","username","minhasenha");
$db = mysql_select_db("noticias");

$sql = "SELECT * FROM noticias WHERE ver = 'on' ORDER BY id DESC LIMIT 20";
//Seleciona os 20 últimos registros
$resultado = mysql_query($sql);
or die ("Não foi possível realizar a consulta ao banco de dados");
$total = mysql_num_rows($sql);

for ($i=0; $i <$total; $i++)
{
$linha = mysql_fetch_array($sql);

$nome = $linha["nome"];
$data = $linha["data"];
$hora = $linha["hora"];
$titulo = $linha["titulo"];
$ver = $linha["ver"];
$id = $linha["id"];

echo "<a href=\"vernews.php?id=".$id."\" title=\"Postado por ".$nome." - ".$data." - ".$hora."\">".$titulo."</a> ";

} ?>

E agora a página que seraH linkada...(vernews.php)
<?
	
$conexao = mysql_connect("mysql.webcindario.com","username","minhasenha");
$db = mysql_select_db("noticias");

$sql = "SELECT * FROM noticias WHERE ver = 'on' id='$id'";
//Seleciona os 20 últimos registros
$resultado = mysql_query($sql)
or die ("Não foi possível realizar a consulta ao banco de dados");

while ($linha=mysql_fetch_array($resultado)) {

$id = $linha["id"];
$nome = $linha["nome"];
$sobrenome = $linha["sobrenome"];
$cidade = $linha["cidade"];
$estado = $linha["estado"];
$email = $linha["email"];
$data = $linha["data"];
$hora = $linha["hora"];
$titulo = $linha["titulo"];
$subtitulo = $linha["subtitulo"];
$texto = $linha["texto"];
$ver = $linha["ver"];

$novadata = substr($data,8,2) . "/" .substr($data,5,2) . "/" . substr($data,0,4);
$novahora = substr($hora,0,2) . "h" .substr($hora,3,2) . "min";

echo "<b>Código da Notícia</b>: $id";
echo "<br>";
echo "Autor: $nome $sobrenome - ($email)";
echo "<br>";
echo "Cidade: $cidade - Estado: $estado";
echo "<br>";
echo "Data: $novadata - Horário: $novahora";
echo "<br>";
echo "Título da Notícia: $titulo";
echo "<br>";
echo "Subtítulo da Notícia: <i> $subtitulo </i>";
echo "<br>";
echo "Notícia: $texto";
echo "<br>";
echo "Validado pelo Webmaster: ";
if ($ver=on) { echo "Sim"; } else { echo "Não"; }
echo "<hr>";

}
?>


Ufa... Pronto hehe... TaH aiH.. s0h edita a conexão... v se funciona... FaLo... (y) :rolleyes:

Edição feita por: blo0d, 15/12/2003, 17:13.

gabrieelmk@hotmail.com

#8 Goku Jr

Goku Jr

    Nilson

  • Usuários
  • 3757 posts
  • Sexo:Masculino

Posted 12/12/2003, 15:14

tipo você conseguiu resolver o problema ? você colocou alguma variavel para Resgatar o que você digitou no Formulario ? se não aconselho que coloque pois alguns servidores podem acusar depois erro do seu script ... tipo de num resgatar nada !!! bom utilize o $_POST[];, $_GET[]; ou o $_REQUEST[];

bom flw !!!
-----------------------------------------------------------------------
PALMEIRAS - Primeiro campeão do mundo em 1951




1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq