Foros del Web » Programando para Internet » PHP »

Agrupar

Estas en el tema de Agrupar en el foro de PHP en Foros del Web. Buenas tengo un problema sobre agrupar que no consigo resolver. Tengo una tabla donde se guardan una serie de noticias de medios de comunicacion Los ...
  #1 (permalink)  
Antiguo 07/10/2009, 15:27
 
Fecha de Ingreso: abril-2008
Mensajes: 70
Antigüedad: 16 años
Puntos: 0
Agrupar

Buenas tengo un problema sobre agrupar que no consigo resolver.

Tengo una tabla donde se guardan una serie de noticias de medios de comunicacion

Los campos de la tabla son cod_rss(id), title(titular),summary(contenido),author(autor), date(fecha),link(enlace) y categoria.

Las categorias en que están clasificadas las noticias son 4. Agenda, entrevista, opinion y noticia.

Bien la consulta que tengo me extrae lo siguiente:

Agenda (07 de octubre) --> Categoria (Fecha de hoy)
El faro de Vigo --> Autor
patatin patatan --> Titular
sadasdasjdasjdjasdjasjdjsadjsjadas --> Contenido

El problema es que no consigo agrupar todas las noticias del mismo medio si no que si hay 10 noticias de el faro de vigo me muestra 10 veces El faro de Vigo y yo lo que quiero es que me ponga el faro de vigo y un listado con las 10 noticias a continuación.

Probé con Group by y ya desubrí que no se puede que solo te muestra un registro luego hice una anidada y me peta

Este es el código que tengo

Código PHP:
<?php require_once('Connections/axenda.php'); ?>
<?php

mysql_select_db
($database_axenda$axenda);
$query_dossier "SELECT cod_rss,title,link,author,categoria,summary,DATE_FORMAT(CURDATE(),'%d/%m/%Y') AS date FROM noticias Where categoria ='axenda' ORDER BY noticias.author";
$dossier mysql_query($query_dossier$axenda) or die(mysql_error());
$row_dossier mysql_fetch_assoc($dossier);
$totalRows_dossier mysql_num_rows($dossier);

mysql_select_db($database_axenda$axenda);
$query_noticias "SELECT cod_rss,title,link,author,categoria,summary,DATE_FORMAT(CURDATE(),'%d/%m/%Y') AS date FROM noticias WHERE categoria ='noticias' ORDER BY noticias.author";
$noticias mysql_query($query_noticias$axenda) or die(mysql_error());
$row_noticias mysql_fetch_assoc($noticias);
$totalRows_noticias mysql_num_rows($noticias);

mysql_select_db($database_axenda$axenda);
$query_entrevistas "SELECT cod_rss,title,link,author,categoria,summary,DATE_FORMAT(CURDATE(),'%d/%m/%Y') AS date FROM noticias WHERE categoria ='entrevistas'";
$entrevistas mysql_query($query_entrevistas$axenda) or die(mysql_error());
$row_entrevistas mysql_fetch_assoc($entrevistas);
$totalRows_entrevistas mysql_num_rows($entrevistas);

mysql_select_db($database_axenda$axenda);
$query_opinion "SELECT cod_rss,title,link,author,categoria,summary,DATE_FORMAT(CURDATE(),'%d/%m/%Y') AS date FROM noticias WHERE categoria ='opinion' ORDER BY noticias.author";
$opinion mysql_query($query_opinion$axenda) or die(mysql_error());
$row_opinion mysql_fetch_assoc($opinion);
$totalRows_opinion mysql_num_rows($opinion);

// Substituimos autor por El correo gallego en el campo 
// 'campo' de la tabla 'tabla' 
$sql "UPDATE noticias SET author='El correo gallego' WHERE link LIKE '%http://www.galicia-hoxe%'";

// Ejecutamos la consulta 
$query mysql_query($sql,$axenda); 

// Substituimos autor por El correo gallego en el campo 
// 'campo' de la tabla 'tabla' 
$sql2 "UPDATE noticias SET author='La Region' WHERE link LIKE '%http://www.laregion%'";

// Ejecutamos la consulta 
$query mysql_query($sql2,$axenda); 


?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Documento sin t&iacute;tulo</title>
<style type="text/css">
<!--
.Estilo4 {
    font-size: 14px;
    font-family: Verdana, Arial, Helvetica, sans-serif;
}
.Estilo6 {
    font-family: Geneva, Arial, Helvetica, sans-serif;
    font-weight: bold;
    font-size: 23px;
}
.Estilo7 {font-size: 20px}
body {
    background-color: #CCCCCC;
}
-->
</style>
</head>

<body>
<p>&nbsp;</p>
<p>&nbsp;</p>
<table width="62%" border="0" align="center" cellpadding="0" cellspacing="0">
  <tr>
    <td><div align="center">
       <ul> 
         <p><span class="Estilo6">AXENDA [<?php echo $row_dossier['date']; ?>]</span>         </p>
         <?php do { ?>
           <br />
           <span class="Estilo7"><?php echo $row_dossier['author']; ?></span><br />
           <br />
        <li class="Estilo4"> <a href="<?php echo $row_dossier['link']; ?>"><?php echo $row_dossier['title']; ?></a> </li>
          <?php } while ($row_dossier mysql_fetch_assoc($dossier)); ?></ul>
       </p>
    </div></td>
  </tr>
</table>
<br />
<table width="62%" border="0" align="center" cellpadding="0" cellspacing="0">
  <tr>
    <td><div align="center">
      <ul>
        <p><span class="Estilo6">ENTREVISTAS [<?php echo $row_entrevistas['date']; ?>]</span> </p>
        <?php do { ?>
        <br />
        <span class="Estilo7"><?php echo $row_entrevistas['author']; ?></span><br />
        <br />
        <li class="Estilo4"> <a href="<?php echo $row_entrevistas['link']; ?>"> <?php echo $row_entrevistas['title']; ?></a></li>
        <?php } while ($row_entrevistas mysql_fetch_assoc($entrevistas)); ?>
      </ul>
      </p>
    </div></td>
  </tr>
</table>
<br />
<table width="62%" border="0" align="center" cellpadding="0" cellspacing="0">
  <tr>
    <td><div align="center">
      <ul>
        <p><span class="Estilo6">NOTICIAS [<?php echo $row_noticias['date']; ?>]</span> </p>
        <?php do { ?>
        <br />
        <span class="Estilo7"><?php echo $row_noticias['author']; ?></span><br />
        <br />
        <li class="Estilo4"> <a href="<?php echo $row_noticias['link']; ?>"><?php echo $row_noticias['title']; ?></a></li>
        <?php } while ($row_noticias mysql_fetch_assoc($noticias)); ?>
      </ul>
      </p>
    </div></td>
  </tr>
</table>
<br />
<table width="62%" border="0" align="center" cellpadding="0" cellspacing="0">
  <tr>
    <td><div align="center">
      <ul>
        <p><span class="Estilo6">OPINI&Oacute;N [<?php echo $row_opinion['date']; ?>]</span> </p>
        <?php do { ?>
        <br />
        <span class="Estilo7"><?php echo $row_opinion['author']; ?></span><br />
        <br />
        <li class="Estilo4"><a href="<?php echo $row_opinion['link']; ?>"> <?php echo $row_opinion['title']; ?></a></li>
        <?php } while ($row_opinion mysql_fetch_assoc($opinion)); ?>
      </ul>
      </p>
    </div></td>
  </tr>
</table>
</body>
</html>
<?php
mysql_free_result
($dossier);

mysql_free_result($noticias);

mysql_free_result($entrevistas);

mysql_free_result($opinion);
?>
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 07:13.