Foros del Web » Programando para Internet » PHP »

categoría

Estas en el tema de categoría en el foro de PHP en Foros del Web. Holas: 1)Estoy desarrollando un proyecto de "zona de descarga" está en flash mx, php4, mysql y xml. 2)Las zonas están divididas en 5 criterios. Ahora ...
  #1 (permalink)  
Antiguo 28/05/2003, 12:25
 
Fecha de Ingreso: agosto-2001
Ubicación: Santiago de Chile
Mensajes: 98
Antigüedad: 22 años, 7 meses
Puntos: 0
categoría

Holas:

1)Estoy desarrollando un proyecto de "zona de descarga" está en flash mx, php4, mysql y xml.
2)Las zonas están divididas en 5 criterios.

Ahora estoy tratando de ver como sentencio la query para que me entrege la cantidad de consultas que encuentra por categoria. Y asi llevar este resultado al lado de cada boton que te lleva a una categoría en específico.

es decir:
el botón de actionscript total de registros: xxx.
el botón de 3d total de registros: xxx.
etc...

ahora tengo esto:
-------------------------------------------------------------------------------

<?php

require ("config.inc.php");

$db = mysql_connect(xxx,xxx,xxx);

$satz = mysql_db_query($dbname, "SELECT * FROM $dbtab WHERE categoria = 'actionscript' order by categoria DESC");

$num = mysql_num_rows($satz);

echo "
<?xml version='1.0'?>
<descarga>";

for ($i=0;$i<$num;$i++) {

$lcategoria = mysql_result($satz,$i,"categoria");
$lid = mysql_result($satz,$i,"id");

$lcategoria = ereg_replace("'", "", $lcategoria);
$lcategoria = stripslashes($lcategoria);

$lid = ereg_replace("'","",$lid);
$lid = stripslashes($lid);

$$num = ereg_replace("'","",$num);
$num = stripslashes($num);

echo "
<down categoria='$lcategoria'>
<detalles id='$lid' total_unico='$num'></detalles>
</down>
";

}

echo "
</descarga>
";

mysql_close($db);

?>

----------------------------------------------------------------------------
lo malo es que mentrega solo el total de la categoría actionscript.
Les pido me sugieran que puedo hacer.

Gracias...
__________________
maguak
  #2 (permalink)  
Antiguo 28/05/2003, 12:50
Avatar de Manoloweb  
Fecha de Ingreso: enero-2002
Ubicación: Monterrey
Mensajes: 2.454
Antigüedad: 22 años, 2 meses
Puntos: 5
No será por esto?

$satz = mysql_db_query($dbname, "SELECT * FROM $dbtab WHERE categoria = 'actionscript' order by categoria DESC");

Te paso un truco que hice hace poco:

Código PHP:
                      <?
                      
if (isset($pst_keyword) && $pst_keyword!=""){
                      
$queries[0]="select distinct a.* from issues a left join acciones b on b.issue=a.ID left join causas c on c.issue=a.ID where a.descripcion like '%AQUI%' or b.descripcion like '%AQUI%' or c.descripcion like '%AQUI%'";
                      
$queries[1]="select * from issues where descripcion like '%AQUI%'";
                      
$queries[2]="select distinct a.* from issues a, acciones b where (a.descripcion like '%AQUI%' or b.descripcion like '%AQUI%') and (a.ID=b.issue)";
                      
$queries[3]="select distinct a.* from issues a, causas b where (a.descripcion like '%AQUI%' or b.descripcion like '%AQUI%') and (a.ID=b.issue)";
                      
$queries[4]="select * from issues where clave like '%AQUI%'";
                      
$qry=str_replace("AQUI",$pst_keyword,$queries[$pst_lookinto]);
                      
conectar();
                      
$QRsearch=mysql_query($qry);
                      
?>
__________________
Manoloweb
  #3 (permalink)  
Antiguo 28/05/2003, 14:03
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
La sentencia SQL no es correcta para lo que quieres hacer ...

Ahí estas diciendoloque que obtenta el total de registros que pertenecen a la categoria que indicas en tu CONDICIONAL: WHERE campo='cosa' ...

En Msyql tienes la función COUNT() que te "cuenta" el total de registros por los críterios que uses .. En concreto te falta el de GROUP que hace eso mismo: -agrupar- los datos según el campo que indiques ..

Código PHP:
$satz mysql_db_query($dbname"SELECT categoria,COUNT(*) as subtotal FROM $dbtab GROUP BY categoria ORDER BY categoria");

while(
$subtotales=mysql_fetch_array($satz)){
   echo 
$subtotales['categoria']." -> ".$subtotales['subtotal']."<br>";

Más info:
http://www.mysql.com/doc/en/Group_by_functions.html

Y en general en el manual de Msyql donde veras el lenguaje SQL que usa Mysql para hacer consultas ..

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #4 (permalink)  
Antiguo 28/05/2003, 15:34
 
Fecha de Ingreso: agosto-2001
Ubicación: Santiago de Chile
Mensajes: 98
Antigüedad: 22 años, 7 meses
Puntos: 0
gracias...

Muy bien, probé la corrección de clúster y super. Me falta unos 4 años pa' ser bueno, por ahora sigo dándele. Je.

Voy a probar el truco.

Gracias...

Luego les cuento como quedó el proyecto, lo voy a alojar en http://www.cronex.cl
espero verlos por esos lugares.
__________________
maguak
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 21:55.