Ir para conteúdo

POWERED BY:

Arquivado

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

MuitoCurioso

[Resolvido] Como inserir dados em duas tabelas simultaneamente

Recommended Posts

Se voce preve que a quantidade de noticias ira aumentar consideravelmente com o passar do tempo, é melhor sempre filtrar por categoria, assim seu script ficara sempre leve e o usuario sempre tera a opcao de filtrar o que deseja ver.

 

So aconselho sempre exibir todos os registros se nao tiver outra opcao ou caso isto seja vital para o sistema.

 

Quanto ao erro, fiz algumas correcoes, acho que voce esqueceu de adaptar o exemplo e tambem cometi um erro ao setar $p com 0 se nao houvesse a variavel $_GET['p'], desculpe.

 

Novo exemplo corrigido:

 

// CATEGORIA das noticias a serem exebidas, suponho que receba por GET ou POST
$Categoria = isSet($_GET["cat"]) && !empty($_GET["cat"]) ? $_GET["cat"] : ''; // Exempo por GET

// CORRECAO - Procure sempre validar dados passados pelo usuario, GET e POST, isto melhora a seguranca do sistema
$p = isSet($_GET["p"]) && is_numeric($_GET["p"]) ? $_GET["p"] : 1;


if(isset($p)) {
$p = $p;
} else {
$p = 1;
}
$qnt = 20;
$inicio = ($p*$qnt) - $qnt;


// SQL que condiciona a coleta das boticias da categoria passada ou, se nao passar, exibe todas
$sql_select = "SELECT * FROM noticias ". ( empty($Categoria) ? '' : " WHERE categoria = '".$Categoria."' " ) ." ORDER BY categoria ASC, id DESC LIMIT $inicio, $qnt";
$sql_query = mysql_query($sql_select) OR Die(mysql_error());


while($array = mysql_fetch_array($sql_query)) {

$id = $array["id"];
$nome = $array["nome"];
$data = $array["data"];
$categoria = $array["categoria"];
$notas = $array["notas"];
$resumo = $array["resumo"];
$visitas = $array["visitas"];

echo "$categoria - $nome - $visitas<br>";
?>

 

um exemplo de acesso ai seria:

 

1) http:// seusite.com/script.php?cat=teste // So mostra as noticias da categoria "teste"

 

2) http:// seusite.com/script.php // Mostra todas as noticias ordenadas por categoria e depois por id decrescente

Compartilhar este post


Link para o post
Compartilhar em outros sites
Aí vai!

 

<?php 
include ("config.php");
// CATEGORIA das noticias a serem exebidas, suponho que receba por GET ou POST 
$Categoria = isSet($_GET["cat"]) && !empty($_GET["cat"]) ? $_GET["cat"] : ''; // Exempo por GET 
// OU 
//$Categoria = isSet($_POST["cat"]) && !empty($_POST["cat"]) ? $_POST["cat"] : ''; // Exempo por POST 

// CORRECAO - Procure sempre validar dados passados pelo usuario, GET e POST, isto melhora a seguranca do sistema 
$p = isSet($_GET["p"]) && is_numeric($_GET["p"]) ? $_GET["p"] : 1; 


if(isset($p)) { 
$p = $p; 
} else { 
$p = 1; 
} 
$qnt = 20; 
$inicio = ($p*$qnt) - $qnt; 


// SQL que condiciona a coleta das boticias da categoria passada ou, se nao passar, exibe todas 
$sql_select = "SELECT * FROM noticias ". ( empty($Categoria) ? '' : " WHERE categoria = '".$Categoria."' " ) ." ORDER BY id DESC LIMIT $inicio, $qnt"; 
exit($sql_select) ; 
$sql_query = mysql_query($sql_select) OR Die(mysql_error()); 


while($array = mysql_fetch_array($sql_query)) { 

$id = $array["id"]; 
$nome = $array["nome"]; 
$data = $array["data"]; 
$categoria = $array["categoria"]; 
$notas = $array["notas"]; 
$resumo = $array["resumo"]; 
$visitas = $array["visitas"]; 

echo "$categoria - $nome - $visitas<br>"; 

}
?>

Compartilhar este post


Link para o post
Compartilhar em outros sites
Legal. Funcionou. Mas exibe as notícias de todas categorias:

 

Fotos - Ministros da Justiça discutem para combate ao tráfico de pessoas - 20

Notícias - Finanças aprova diretorias do BRDE e da Caixa Estadual - 23

Notícias - Relator quer reforma política o mais ampla e profunda possível - 18

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom!

 

Pra exibir somente uma categoria especifica, acesse sua url passando a cat por GET:

 

www.vitubo.com/mediacenter/exibir_categorias.php?cat=fotos

www.vitubo.com/mediacenter/exibir_categorias.php?cat=noticias

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.