Foros del Web » Programando para Internet » PHP »

Contar repeticiones en array

Estas en el tema de Contar repeticiones en array en el foro de PHP en Foros del Web. Hola! a ver si alguien puede responder este problema! dentro de un while, que me muestra los registros de una consulta, que tiene entre otras ...
  #1 (permalink)  
Antiguo 27/02/2010, 10:37
 
Fecha de Ingreso: julio-2007
Mensajes: 178
Antigüedad: 16 años, 9 meses
Puntos: 1
Contar repeticiones en array

Hola! a ver si alguien puede responder este problema!

dentro de un while, que me muestra los registros de una consulta, que tiene entre otras la columna "editorial"

quisiera meter cada uno de estos campos en un array por ejemplo:

$entrada [1]: Losada
$entrada [2]: Losada
$entrada [3]: Planeta

Hay alguna manera de contar cuantas veces tengo cada editorial, sin hacer otra consulta, solo con php?
  #2 (permalink)  
Antiguo 27/02/2010, 10:52
Avatar de jackson666  
Fecha de Ingreso: noviembre-2009
Ubicación: Buenos Aires, Argentina
Mensajes: 1.971
Antigüedad: 14 años, 6 meses
Puntos: 65
Respuesta: Contar repeticiones en array

Código PHP:
# Supongamos que en $query esta el resultado de tu consulta
$entrada = array();
while(
$res mysql_fetch_array($query)){
   
$entrada[$res['editorial']]++;
}

foreach(
$entrada as $key => $val){
    echo 
"La editorial $key se repite $val veces <br />";

__________________
HV Studio
Diseño y desarrollo web
  #3 (permalink)  
Antiguo 27/02/2010, 10:56
 
Fecha de Ingreso: julio-2007
Mensajes: 178
Antigüedad: 16 años, 9 meses
Puntos: 1
Respuesta: Contar repeticiones en array

Cita:
Iniciado por jackson666 Ver Mensaje
Código PHP:
# Supongamos que en $query esta el resultado de tu consulta
$entrada = array();
while(
$res mysql_fetch_array($query)){
   
$entrada[$res['editorial']]++;
}

foreach(
$entrada as $key => $val){
    echo 
"La editorial $key se repite $val veces <br />";

Puede funcionar! Pero que seria $Key ?
  #4 (permalink)  
Antiguo 27/02/2010, 10:59
Avatar de jackson666  
Fecha de Ingreso: noviembre-2009
Ubicación: Buenos Aires, Argentina
Mensajes: 1.971
Antigüedad: 14 años, 6 meses
Puntos: 65
Respuesta: Contar repeticiones en array

la estructura de control foreach() te permite trabajar en dos modos
1)
Código PHP:
foreach($array as $arr){
    echo 
$arr// te imprime solo el valor de cada indice

2)
Código PHP:
foreach($array as $key => $val){
    echo 
$key// te imprime cada indice
    
echo $val// te imprime el valor de cada indice

__________________
HV Studio
Diseño y desarrollo web
  #5 (permalink)  
Antiguo 27/02/2010, 11:05
 
Fecha de Ingreso: julio-2007
Mensajes: 178
Antigüedad: 16 años, 9 meses
Puntos: 1
Respuesta: Contar repeticiones en array

Exelente!! Funcionar funciona! sos un fenomeno, recien ahora empiezo a desaunudar este problema!

Pero hay algo extrano, si yo uso esa funciona que me dijiste, solo me imprime un registro, es bien raro :s

Tal vez me este equivocando en algo dentro del While ...

Código HTML:
while($row = mysql_fetch_array($resultados)) { 
   echo '<div class="item">

    <div class="mini"><img src="http://imagenes.delsubsuelo.com/thumb/'.$row["url_img1"].'" alt="thumb" height="145" /></div>

    <div class="titulos">

    <a class="vinculo_titulo" href="elpoder.html">'.$row["titulo"].'</a>

        <p class="texto_item"> Por <a href="http://delsubsuelo.com/buscar.php?buscar='.str_replace(" " , "-", $row['autor']).'&boton=Buscar&dedonde=2&ultimo=0&order=autor">'.$row["autor"].'</a></p>

        

        <p class="sinopsis"><br />'.$row["sinopsis"].'</p>

    </div> 

    <!-- FIN sinopsis -->

    <div class="botonera_item">

    <div class="precio_item"><span class="precio">$</span><span class="precio2">'.$row["precio"].'</span><br />

     <span class="texto_item">Editorial: '.$row["editorial"].'</span><br />

        <span class="texto_item">Stock: 1</span><br />

    </div>

    <!-- FIN precio_item -->

    <div class="boton_compra">Comprar</div>

    <div class="boton_detalles">Ver detalles del libro</div>

    </div>

    </div><!-- FIN item --><br />';


# Supongamos que en $query esta el resultado de tu consulta
$entrada = array();
while($res = mysql_fetch_array($resultados)){
   $entrada[$res['genero']]++;
}

foreach($entrada as $key => $val){
    echo "La editorial $key se repite $val veces <br />";
}  


}
  #6 (permalink)  
Antiguo 27/02/2010, 11:08
Avatar de jackson666  
Fecha de Ingreso: noviembre-2009
Ubicación: Buenos Aires, Argentina
Mensajes: 1.971
Antigüedad: 14 años, 6 meses
Puntos: 65
Respuesta: Contar repeticiones en array

Tenes un while adentro de otro y estas iterando muchas veces el mismo resultado
__________________
HV Studio
Diseño y desarrollo web
  #7 (permalink)  
Antiguo 27/02/2010, 11:14
 
Fecha de Ingreso: julio-2007
Mensajes: 178
Antigüedad: 16 años, 9 meses
Puntos: 1
Respuesta: Contar repeticiones en array

Cita:
Iniciado por jackson666 Ver Mensaje
Tenes un while adentro de otro y estas iterando muchas veces el mismo resultado
Disculpa mis tonteras, ya solucione todo. Realmente no estaba pensando, pero gracias a tu ayuda ya lo tengo funcionando!!!

Te felicito por la buena voluntad de tratar con un novato de pesadilla :p


Etiquetas: contar
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 16:13.