Jump to content


Photo

Cadastrando Automaticamente


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

#1 Sp3ak3

Sp3ak3

    12 Horas

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

Posted 24/04/2009, 18:55

ola galera, quando acesso a pagina. meusite.com.br/painel/cadastronoticia.php ele automaticamente ja esta fazendo um cadastro tudo em branco, da uma olhada no meu codigo e ve o que preciso mudar para parar de fazer isso.

Codigo:

[codebox]<?php
include "../includes/conecta.php";
$sql_categoria = mysql_query("select * from categoria", $db);
$titulo = $_POST['titulo'];
$subtitulo = $_POST['subtitulo'];
$categoria = $_POST['categoria'];
$data = date("Y-m-d");
$destaque = $_POST['destaque'];
$noticia = $_POST['noticia'];
$fonte = $_POST['fonte'];
$diretorio = "../imgs/noticias/";
$imagem = '';
if( isset( $_FILES['imagem'] ) )
{
// enviou imagem
$imagem = $_FILES['imagem']['name'];
if(move_uploaded_file($_FILES['imagem']['tmp_name'], $diretorio . $imagem )) {
// enviou imagem. aparentemente, sem problema
}else{
// enviou imagem mas algum problema ocorreu
$imagem = '';
}
}else{
// não enviou imagem
}

$sql = mysql_query("insert into noticias (titulo, subtitulo, categoria, data, destaque, noticia, fonte, imagem) VALUES ('$titulo', '$subtitulo', '$categoria', '$data', '$destaque', '$noticia', '$fonte', '$imagem')") or die ("Erro na Consulta: ".mysql_error());
if ($sql ) {
echo "Cadastro de notícia efetuado.";
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR...nsitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>

<body>
<table width="100%" border="0">
<tr>
<td>&nbsp;</td>
</tr>
</table>
<table width="100%" border="0">
<tr>
<td width="22%" valign="top">&nbsp;</td>
<td width="78%" valign="top"><table width="100%" border="0">
<tr>
<td>&nbsp;</td>
</tr>
</table>
<form action="cadastronoticia.php" method="post" enctype="multipart/form-data" name="noticia">
<table width="100%" border="0">
<tr>
<td width="17%">Titulo:</td>
<td width="83%"><input type="text" name="titulo" size="40" id="titulo" /></td>
</tr>
<tr>
<td>Subtitulo:</td>
<td><input type="text" name="subtitulo" size="40" maxlength="150" /></td>
</tr>
<tr>
<td>Categoria:</td>
<td><select name="categoria">
<option value="0">&lt;
<Selecione o tipo>
&gt;</option>
<?php while($array = mysql_fetch_array($sql_categoria)) {?>
<option value="<?php echo $array['2']; ?>"><?php echo $array['1']; ?></option>
<?php } ?>
</select></td>
</tr>
<tr>
<td>Destaque:</td>
<td><select name="destaque">
<option value="1">Sem destaque</option>
<option value="2"> Destacar</option>
</select></td>
</tr>
<tr>
<td>Notícia:</td>
<td><textarea name="noticia" cols="50" rows="15" id="noticia"></textarea></td>
</tr>
<tr>
<td>Fonte</td>
<td><input type="text" name="fonte" size="40" id="fonte" /></td>
</tr>
<tr>
<td>Imagem:</td>
<td><input type="file" name="imagem" /></td>
</tr>
<tr>
<td>&nbsp;</td>
<td><input type="submit" value="Cadastrar" />
-
<input type="reset" value="Limpar dados" /></td>
</tr>
</table>
</form></td>
</tr>
</table>
</body>
</html>[/codebox]

Edição feita por: savior, 26/04/2009, 19:07.


#2 boirock

boirock

    Tecnologia para todos (agora hexa campeão)

  • Usuários
  • 1559 posts
  • Sexo:Masculino
  • Localidade:Curitiba - PR
  • Interesses:PostgreSQL - PHP

Posted 24/04/2009, 20:54

Cara... isso acontece porque a primeira coisa do seu script é inserir os dados :)
Tente colocar todo o seu código de inserção dentro de um IF que verifique se o formulário foi postado. Pode fazer isso verificando a variável $_POST... exemplo?
<?php
if (count($_POST)) {
... SEU CÓDIGO ...
}
?>
<html bla bla bla ...


#3 Sp3ak3

Sp3ak3

    12 Horas

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

Posted 25/04/2009, 16:39

Cara... isso acontece porque a primeira coisa do seu script é inserir os dados :)
Tente colocar todo o seu código de inserção dentro de um IF que verifique se o formulário foi postado. Pode fazer isso verificando a variável $_POST... exemplo?

<?php
if (count($_POST)) {
... SEU CÓDIGO ...
}
?>
<html bla bla bla ...


cara vlw. deu certo, agora estou com uma duvida cruel, como mostrar noticia quando nao tiver imagem.

por exemplo

<?
if($imagem) {
mostrar noticia
}else{
mostrar noticia sem imagem
}
?>

a minha duvida e como puxar a imagem do banco de dados?? o codigo que fiz atualmente e necessario ter imagem, vou postar aqui para vc me dar alguma dica.

<?php
require ("includes/conecta.php");

$cod = $_GET['cod'];
$sql_categoria = mysql_query("select * from noticias WHERE id = '$cod'");

?>
<?php while($vetor=mysql_fetch_array($sql_categoria)) { ?>
<td><a href="imgs/noticias<?php echo $vetor[9] ?>" rel='lightbox[<?php echo $vetor[1] ?>]' title="<?php echo $vetor[1] ?>"><img src="gera_pag.php?imagem=imgs/noticias/<?php echo $vetor[9] ?>" alt=""width="200" height="200" border="0" /></a></td>
noticia

<php? } ?>



#4 Crab

Crab

    Da paz, mas preparado para Guerra

  • Ex-Admins
  • 2521 posts
  • Sexo:Masculino
  • Localidade:Florianópolis - SC
  • Interesses:Desenvolvimento Gráfico e Web.

Posted 25/04/2009, 21:14

Ajudando de acordo com sua estrutura:
<?php

require ("includes/conecta.php");

$cod = $_GET['cod'];
$sql_categoria = mysql_query("select * from noticias WHERE id = '$cod'");

while($vetor=mysql_fetch_array($sql_categoria)){

	if ($vetor[9] != ""){  // caso esteja usando o valor do campo relacionado à imagem em branco quando não tiver imagem

?>

		<td>

		<a href="imgs/noticias<?php echo $vetor[9]; ?>" rel='lightbox[<?php echo $vetor[1]; ?>]' title="<?php echo $vetor[1]; ?>">  

		<img src="gera_pag.php?imagem=imgs/noticias/<?php echo $vetor[9]; ?>" alt="" width="200" height="200" border="0" />

		</a>

		</td>

<?php

	}

// exibe a noticia

}

?>

(y)Até mais




0 user(s) are reading this topic

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

IPB Skin By Virteq