Foros del Web » Programando para Internet » PHP »

Portal de noticias

Estas en el tema de Portal de noticias en el foro de PHP en Foros del Web. Hola a todos, primero no se si este post va aqui pero creo ke es el sitio más conveniente. Mi problema es que estoy haciendo ...
  #1 (permalink)  
Antiguo 14/02/2009, 11:58
 
Fecha de Ingreso: octubre-2008
Ubicación: Andalucia
Mensajes: 23
Antigüedad: 15 años, 6 meses
Puntos: 0
Portal de noticias

Hola a todos, primero no se si este post va aqui pero creo ke es el sitio más conveniente.
Mi problema es que estoy haciendo un porta de noticias. Lo tengo ya todo hecho con pdo. Yo saco lo titulares y las cabeceras de las noticias por en orden, limitadas y todo. Lo que quiero hacer es tener una sola pagina que por ejemplo se llame doc.php, que cuando una persona pulse en un titular aparezca en doc.php. Me entienden???ke no tenga ke crear una pagina por cada noticia. es que las noticias las va a meter una persona que no sabe php ni html ni nada y no tiene porque saberlo, xke el lo ke va a acer es usarla. Me podeis dar solucion. os pongo aki lo ke seria la parte php de una pagina normal donde va mostrando los titulares y cabeceras.

Código PHP:
      <?
include_once("Php/conexion.php");

try{
    
$dbh=conectar();
                   
    
$stmt1=$dbh->query("SELECT titular, resumen, contenido, imagen, fecha, hora, autor FROM noticias WHERE preferencia='1' ORDER BY noticia_id DESC LIMIT 5 ");
}catch (
PDOException $e){
    echo 
"Error en la consulta: ";
}

    
$row1=$stmt1->fetch();
    while(
$row1){
?>
<a href="<?= $row1["imagen"]?>" title="<?= $row1["titular"]?>" rel="lightbox"><img src="<?= $row1["imagen"]?>" alt="x" class="foto"/></a>
<br />
<br />
<h2><a href="#" class="tit"><?= $row1["titular"]?></a></h2>
<br />
<p class="resumen"><?= $row1["resumen"]?></p>
<hr />
<?
$row1
=$stmt1->fetch();
}        

$dbh=NULL;

?>
  #2 (permalink)  
Antiguo 14/02/2009, 14:19
Avatar de Acron_0248  
Fecha de Ingreso: junio-2005
Ubicación: 127.0.0.1
Mensajes: 1.648
Antigüedad: 18 años, 10 meses
Puntos: 18
Respuesta: Portal de noticias

Una solución sería utilizar el titular como valor GET para doc.php, por ejemplo, algo como esto:
Código PHP:
<a href="<?= $row1["imagen"]?>" title="<?= doc.php?noticia=$row1["titular"]?>" rel="lightbox">
Luego, en doc.php, verificas el valor de $_GET['noticia'], haces una búsqueda en la base de datos para obtener los datos de una noticia que tenga el mismo título que el que se envió por $_GET['noticia'] y muestras lo que sea que quieras mostrar de la noticia.

Podrías usar otras formas para conseguir el mismo resultado, pero el uso de GET para este tipo de casos es lo más común
__________________
Usuario Reigistrado de linux #399288
  #3 (permalink)  
Antiguo 15/02/2009, 07:49
 
Fecha de Ingreso: octubre-2008
Ubicación: Andalucia
Mensajes: 23
Antigüedad: 15 años, 6 meses
Puntos: 0
Respuesta: Portal de noticias

Yo hago lo siguiente en la pagina ke manda la noticia:

Código PHP:
try{
    $dbh=conectar();
                   
    $stmt1=$dbh->query("SELECT titular, resumen, contenido, imagen, fecha, hora, autor FROM noticias WHERE preferencia='1'");
}catch (PDOException $e){
    echo "Error en la consulta: ";
}

    $row1=$stmt1->fetch();
    while($row1){
?>
<a href="<?= $row1["imagen"]?>" title="<?= $row1["titular"]?>" rel="lightbox"><img src="<?= $row1["imagen"]?>" alt="x" class="foto"/></a>
<br />
<br />
<h2><a href="<?=doc.php?noticia=$row1['titular']?>" class="tit"><?= $row1["titular"]?></a></h2>
<br />
<p class="resumen"><?= $row1["resumen"]?></p>
<hr />
y la que lo recibe esto:
Código PHP:
try{
    $dbh=conectar();
    $titular=$_GET['noticia'];           
    $stmt=$dbh->query("SELECT titular, contenido FROM noticias WHERE titular='$titular'");;
}catch (PDOException $e){
    echo "Error en la consulta: ";
}
    $row=$stmt->fetch();
    while($row){
?>

<a href="<?= $row["imagen"]?>" title="<?= $row1["titular"]?>" rel="lightbox"><img src="<?= $row1["imagen"]?>" alt="x" class="foto"/></a>
<br />
<br />
<h2><a href="#" class="tit"><?= $row["titular"]?></a></h2>
<br />
<p class="resumen"><?= $row["resumen"]?></p>
<hr />
<?
$row
=$stmt->fetch();
}
$dbh=NULL;
y me da este error:

Cita:
Parse error: syntax error, unexpected '=' en la linea: <h2><a href="<?=doc.php?noticia=$row1['titular']?>" class="tit"><?= $row1["titular"]?></a></h2>

Última edición por Kstro7; 15/02/2009 a las 08:02
  #4 (permalink)  
Antiguo 15/02/2009, 08:35
Avatar de Acron_0248  
Fecha de Ingreso: junio-2005
Ubicación: 127.0.0.1
Mensajes: 1.648
Antigüedad: 18 años, 10 meses
Puntos: 18
Respuesta: Portal de noticias

Typo :P

Debería ser:
Código PHP:
<h2><a href="doc.php?noticia=<?= $row1['titular']?>" class="tit"><?= $row1["titular"]?></a></h2>
Si colocas doc.php?noticia=$row1... dentro del echo, php buscará interpretar todo como parte del código, es decir, se confundirá creyendo que estás buscando asignar $row1 a una variable que no existe.
__________________
Usuario Reigistrado de linux #399288
  #5 (permalink)  
Antiguo 15/02/2009, 08:42
 
Fecha de Ingreso: octubre-2008
Ubicación: Andalucia
Mensajes: 23
Antigüedad: 15 años, 6 meses
Puntos: 0
Respuesta: Portal de noticias

Muxas gracias ya esta solucionado
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:59.