Ir para conteúdo

POWERED BY:

Arquivado

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

rodrigo lujan

Como faço funcionar?

Recommended Posts

Eai Galera, podiam ajudar com esse problema, era a ultima coisa que tinha para fazer do meu sistema de news e deu errado.

Bom fiz isso.

<?
require "config.php";
session_start();
?>

<?
$list_news = mysql_query("SELECT * FROM noticias WHERE selectnews='1' ORDER BY id ASC LIMIT 8");
while(($s = mysql_fetch_array($list_news)) !== false){
?>

<? echo $s["dia"]; ?>/<? echo $s["mes"]; ?></td><td width="474" background="images/date.png"><a href="news_long.php" onclick="<? $newslong = $s["titulo"]; $_SESSION["clicknews"] = $newslong ?>" target="_blank"><? echo $s["titulo"]; ?></a></font>

<?
}
?>

E isso em outra pagina.

<?
require "config.php";
session_start();
$_SESSION["clicknews"];
$nwsck = $_SESSION["clicknews"];
echo $nwsck;
?>
<?
$list_long = mysql_query("SELECT * FROM noticias WHERE titulo='$nwsck'");
while(($l = mysql_fetch_array($list_long)) !== false){
?>

<font color="white" face="Kristen ITC" size="+1"><? echo $l["titulo"]; ?></font></td>
<? echo $l["mensagem"]; ?>
<font color="white" face="Kristen ITC">Postado Em: <? echo $l["dia"]; ?>/<? echo $l["mes"]; ?>   Por: <? echo $l["nickname"]; ?>   As: <? echo $l["hora"]; ?>:<? echo $l["minuto"]; ?></font>

<?
}
?>

 

Era pro codigo pegar o $s["titulo"] que iria conter o titulo da noticia e mandar para outra pagina, ate ai tudo bem, só que nao importando o titulo ele manda sempre o mesmo por que como está em while a session vai para os 2, eu queria que fosse somente para o clicado, alguem pode ajudar.?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara não sei se foi só eu , mas não entendi bulhufas, tem como você explicar melhor ?

 

Assim, o

 

$_SESSION["clicknews"] = $newslong 

 

leva a variavel do td inteiro

 

<td width="80" background="images/date2.png"><? echo $s["dia"]; ?>/<? echo $s["mes"]; ?></td><td width="474" background="images/date.png"><a href="news_long.php" onclick="<? $newslong = $s["titulo"]; $_SESSION["clicknews"] = $newslong; ?>" target="_blank"><? echo $s["titulo"]; ?></a></font></td>

 

nesse código são mostradas as 8 primeiras noticias, e ao clicar ele redirecionaria para as noticias completas

<a href="news_long.php">

 

Só que o problema é que como está dentro de um while

$list_news = mysql_query("SELECT * FROM noticias WHERE selectnews='1' ORDER BY id ASC LIMIT 8");
while(($s = mysql_fetch_array($list_news)) !== false){

 

o session leva todas as variaveis ao invez de somente a clicavel, eu queria que ele levasse somente a clicavel, entendeu?

 

O Código que pega o session na outra pag.

 

<?
require "config.php";
session_start();
$_SESSION["clicknews"];
$clicknews = $_SESSION["clicknews"];
echo $clicknews;
?>
<?
$list_long = mysql_query("SELECT * FROM noticias WHERE titulo='$clicknews'");
while(($nl = mysql_fetch_array($list_long)) !== false){
?>

<tr align="center">
<td width="555" width="" align="left"><font color="white" face="Kristen ITC" size="+1"><? echo $nl["titulo"]; ?></font></td>

<td width="555" align="justify"><font color="white" face="Kristen ITC" size="+1"><? echo $nl["mensagem"]; ?></font></td>

<td width="555" background="images/date2.png"><font color="white" face="Kristen ITC">Postado Em: <? echo $nl["dia"]; ?>/<? echo $nl["mes"]; ?>   Por: <? echo $nl["nickname"]; ?>   As: <? echo $nl["hora"]; ?>:<? echo $nl["minuto"]; ?></font></td>

<?
}
?>

Tirei umas coisinhas para ficar menor mais la ta certo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom , vamos la, agora entendi, cara, assim, ta TUDO errado!

 

Não se usa Session para esse tipo de coisa.

 

E você ta usando o método onclick do javascript para setar uma varivel em php, impossivel!!!

 

Nessa parte

 

<td width="80" background="images/date2.png"><? echo $s["dia"]; ?>/<? echo $s["mes"]; ?></td><td width="474" background="images/date.png"><a href="news_long.php" onclick="<? $newslong = $s["titulo"]; $_SESSION["clicknews"] = $newslong; ?>" target="_blank"><? echo $s["titulo"]; ?></a></font></td>

Isso jamais vai funcionar...

Você tem que mandar um parametro via get e resgata-lo na proxima pagina e o certo é criar um ID unico e auto_increment para identificar e não o titulo.

 

Faça assim

 

<td width="80" background="images/date2.png"><? echo $s["dia"]; ?>/<? echo $s["mes"]; ?></td><td width="474" background="images/date.png"><a href="news_long.php?titulo=<?echo $s["titulo"] ?>" target="_blank"><? echo $s["titulo"]; ?></a></font></td>

 

e na que recebe

 

faça assim

 

<?
require "config.php";
session_start();
$clicknews = $_GET['titulo'];
echo $clicknews;
?>
<?
$list_long = mysql_query("SELECT * FROM noticias WHERE titulo='$clicknews'");
while(($nl = mysql_fetch_array($list_long)) !== false){
?>

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.