Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Contar cuántas líneas coinciden con los datos que ingreso

Estas en el tema de Contar cuántas líneas coinciden con los datos que ingreso en el foro de PHP en Foros del Web. Buenas, estoy intentando realizar un script pero se me está complicando la lógica... La idea es la siguiente: tengo un form con 5 inputs donde ...
  #1 (permalink)  
Antiguo 02/06/2016, 10:28
 
Fecha de Ingreso: abril-2013
Mensajes: 4
Antigüedad: 11 años
Puntos: 0
Contar cuántas líneas coinciden con los datos que ingreso

Buenas, estoy intentando realizar un script pero se me está complicando la lógica...

La idea es la siguiente: tengo un form con 5 inputs donde ingreso en cada uno un numero diferente. Por otro lado tengo un archivo con más de 1 millón de combinaciones (todas de 5 numeros).

Lo que quiero hacer es que el script me diga cuántas combinaciones contienen por lo menos 2 de los numeros ingresados, que me diga tambien cuántas contienen 3 numeros, cuántas contienen 4 de los números ingresados y cuántas contienen los 5 numeros ingresados.

Hasta ahora tengo un explode para obtener cada combinacion por separado pero me está faltando la funcion para contar las que coincidan con los números.

Muchas gracias!!
  #2 (permalink)  
Antiguo 02/06/2016, 10:30
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Contar cuántas líneas coinciden con los datos que ingreso

Cita:
Hasta ahora tengo un explode para obtener cada combinacion por separado pero me está faltando la funcion para contar las que coincidan con los números.
No suena tan fácil, pero bueno, ya que tienes arrays puedes usar funciones para arrays, ejemplo: array_intersect() para ver cuantos valores de tu secuencia inicial existen en cada arreglo de tu colección mayor.

Ya con eso debería ser suficiente para resolver lo que buscas, consulta el manual.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 02/06/2016, 10:58
 
Fecha de Ingreso: abril-2013
Mensajes: 4
Antigüedad: 11 años
Puntos: 0
Respuesta: Contar cuántas líneas coinciden con los datos que ingreso

Gracias por la respuesta!

Hasta el momento tengo lo siguiente

Código PHP:
<form method="post">
<input type="text" name="01" size="3"><br />
<input type="text" name="02" size="3"><br />
<input type="text" name="03" size="3"><br />
<input type="text" name="04" size="3"><br />
<input type="text" name="05" size="3"><br />
<input type="submit" name="go" value="GO">
<?php
if ($_POST['go']=="GO") {
$a $_POST['01'];
$b $_POST['02'];
$c $_POST['03'];
$d $_POST['04'];
$e $_POST['05'];
$comb "1, 2, 3, 4, 10
1, 2, 3, 4, 11
1, 2, 3, 4, 12
1, 2, 3, 4, 13
1, 2, 3, 4, 14
1, 2, 3, 4, 15
1, 2, 3, 4, 16"
;
$una explode("\n"$comb);
foreach (
$una as $linea) { 

}
}
?>
</form>
Me acuerdo que para buscar en una base de datos habia algo como LIKE, lo que estoy precisando es que se encuentren coincidencias y contarlas..
  #4 (permalink)  
Antiguo 02/06/2016, 12:24
 
Fecha de Ingreso: octubre-2010
Ubicación: España
Mensajes: 1.007
Antigüedad: 13 años, 6 meses
Puntos: 123
Respuesta: Contar cuántas líneas coinciden con los datos que ingreso

A ver si he entendido bien. Lo que quieres es buscar cuántos registros de la base de datos contienen un número.

Por que no realizar directamente el trabajo con la base de datos?

Como bien comentas puedes encadenar like para buscar todas las coincidencias de los 5 número a buscar

Un ejemplo de like:
Código SQL:
Ver original
  1. SELECT * FROM tabla WHERE campo1 LIKE '%numero1%' OR campo2 LIKE '%numero2% '
__________________
Unset($vida['malRollo']);
  #5 (permalink)  
Antiguo 02/06/2016, 13:03
 
Fecha de Ingreso: abril-2013
Mensajes: 4
Antigüedad: 11 años
Puntos: 0
Respuesta: Contar cuántas líneas coinciden con los datos que ingreso

Muchas gracias, pero en realidad no tengo una base de datos mysql, de todas formas pateketrueke me ayudó a realizarlo.

Saludos!

Etiquetas: ingreso
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 18:09.