ramonjosegn
Sigma
Verificación en dos pasos activada
Verificado por Whatsapp
¡Usuario popular!
no entendi muy bien... pero veamos...
lista A
1
2
3
4
5
lista B
7
4
32
5
22
lista C
1
2
6
4
8
9
0
y queres ver si alguno de la lista A se repite en la C??¿¿
Este es el code:Si alguno de la lista A se repite en la B (la idea es para mostrar trayectos de buses) y en C mostrar cuáles son los que se repiten
Bueno voy a explicártelo de manera práctica, lo que pretendo
Barrio A - pasan las rutas 1, 2, 3
Barrio B - pasan las rutas 1, 34, 45
Seleccionas barrio A y seleccionas barrio B (serían 2 listas, aunque a futuro la idea es ir complicándolo más) y el resultado es
1 (la ruta que pasa por ambos barrios)
No me preguntes cómo la voy a alimentar, no he pensado en eso...
---------- Post agregado el 22-jun-2013 hora: 12:30 ----------
(En Bogotá se está implementado el servicio integrado de Transporte Público, por desgracia la Alcaldía no entrega ni mapas, así que algunos usuarios estamos viendo cómo obtener información, organizarla, compartirla, etc, por ahora estamos trabajando con los mapas - prácticamente ya los hemos creados todos - pero la idea es llegar a tener algo interactivo en el futuro, pero por algo se empieza...)
<?php
$LISTAS['A'] = array(1,3,5,7);
$LISTAS['B'] = array(2,3,8,9);
$LISTAS['C'] = array(1,2,9,10,14);
echo '<form action="" method="POST">';
foreach($LISTAS as $K=>$L){
echo $K.'<input type="checkbox" name="lst[]" value="'.$K.'"><br/>';
}
echo '<input type="submit">';
echo '</form>';
if(count($_POST['lst'])==2){
$ZZ = array_intersect($LISTAS[$_POST['lst'][0]],$LISTAS[$_POST['lst'][1]]);
echo '<pre>';
print_r($ZZ);
}
?>
Array
(
[0] => 1
)
Array
(
[0] => 2
[3] => 9
)
Muchas gracias [MENTION=9679]cicklow[/MENTION] pero eso lo uso así tal cuál? y ahí puedo poner caracteres alfanuméricos? ya que algunas rutas de buses se llaman 1-2 ó así y también sería interesante poner los destinos... es decir 1 Tal barrio a tal barrio, yo no sé apenas nada de PHP por eso precisamente preguntaba por algún sistema que yo mismo pudiera manejar, manejo Actionscript 2, pero flash no es compatible con dispositivos móviles
Acá hay un chico que está tratando de hacer algo, pero mucho más enrevesado desde mi punto de vista, ya que lo hace calle por calle y así la verdad es que no me parece que sirva de mucho:
Paraderos.co
También veo que en ese sistema me tocaría poner las rutas manualmente, ¿hay alguna forma de cargarlas desde algún archivo externo?
(jajjaa... me va a tocar hacer curso de PHP rápido... no pretendo que me des clases, ya lo sabes...)
<?php
$LISTAS['Linea A'] = array("1","3-1","5","7");
$LISTAS['Linea B'] = array("2-1","3-1","8","9-2");
$LISTAS['Linea C'] = array("1","2-1","9-2","10","14");
echo '<form action="" method="POST">';
foreach($LISTAS as $K=>$L){
echo $K.'<input type="checkbox" name="lst[]" value="'.$K.'"><br/>';
}
echo '<input type="submit">';
echo '</form>';
if(count($_POST['lst'])==2){
$ZZ = array_intersect($LISTAS[$_POST['lst'][0]],$LISTAS[$_POST['lst'][1]]);
echo '<pre>';
print_r($ZZ);
}
?>
PHP:<?php $LISTAS['Linea A'] = array("1","3-1","5","7"); $LISTAS['Linea B'] = array("2-1","3-1","8","9-2"); $LISTAS['Linea C'] = array("1","2-1","9-2","10","14"); echo '<form action="" method="POST">'; foreach($LISTAS as $K=>$L){ echo $K.'<input type="checkbox" name="lst[]" value="'.$K.'"><br/>'; } echo '<input type="submit">'; echo '</form>'; if(count($_POST['lst'])==2){ $ZZ = array_intersect($LISTAS[$_POST['lst'][0]],$LISTAS[$_POST['lst'][1]]); echo '<pre>'; print_r($ZZ); } ?>
Si necesitas cargar las listas desde un sitio externo abria que ver el formato de esas listas... pero se puede 🙂
Ok, muchas gracias, aunque me sobraría LINEA C, ya que la idea es en principio simplemente conectar el barrio de salida con el de destino (aunque he visto que Bogotá tiene cientos de barrios!!), ¿toca cambiar algo en el código o simplemente borraría la línea $LISTAS['Linea C'] = array("1","2-1","9-2","10","14"); ?
solo borra lo de la linea c 🙂
Me gustaría pasar esto a Flash y avanzar un poco más en el tema, aunque tendría que comenzar a programarlo porque no tengo muy claro cómo imprimir las variables, y me gustaría ir en el futuro más allá, y añadir intersecciones para llegar de un punto A a un punto B, es decir, tomando 2 ó más buses...
---------- Post agregado el 28-ago-2013 hora: 15:11 ----------
(estoy viendo algunos tutoriales en Flash sobre arrays)
no es dificil pasarlo a flash 🙂
bueno de pronto con 2 barrios no... pero tengo como 400 barrios y unas 70 rutas de buses, jajajaa... pero claro, empezaré por lo básico... sólo que no sé por dónde empezar... voy a preguntar en algún foro de flash, a ver si me van echando una manito...
en realidad testea con 3 barrios por ejemplo y dsp vas viendo lo del resto... una ves que tengas con pocos barrios dsp vas viendo lo demas...
si lo quieres para moviles puedes usar java, osea quieres que sea una aplicación para móviles?, podrías hacer una para android no es difícil, simplemente una comparación de enteros, también pueden ser alfanuméricos, en java no seria dificil es algo parecido a PHP, yo te recomendaría mas esa opción. Saludos...
Eso haré, aunque como te digo no sé por dónde empezar la verdad, supongo que creando los arrays... el cálculo que tienes en PHP sí me pierdo, y la impresión en pantalla también, me tocaría concatenar las variables de salida, pues que yo sepa para imprimir algo en pantalla en flash necesito hacerlo en texto dinámico (y necesito un texto para cada variable... si pasan 20 rutas... puf...)
No entiendo porqué nunca se encuentran este tipo de "rutinas de código" online, cuando son cosas que son útiles y prácticas (no saber si pepito fue a clase el lunes... en fin..)
<?php
//Creamos los array con cada linea
$LISTAS['Linea A'] = array("1","3-1","5","7");
$LISTAS['Linea B'] = array("2-1","3-1","8","9-2");
$LISTAS['Linea C'] = array("1","2-1","9-2","10","14");
//mostramos en pantalla el formulario (esto lo que hacemos es recorrer todas las listas con foreach y con echo mostrar en pantalla los checkbox del formulario)
echo '<form action="" method="POST">';
foreach($LISTAS as $K=>$L){
echo $K.'<input type="checkbox" name="lst[]" value="'.$K.'"><br/>';
}
echo '<input type="submit">';
echo '</form>';
//verificamos que la cantidad de seleccionados sean 2
if(count($_POST['lst'])==2){
//vemos las listas seleccionadas y calculamos los que se juntan (http://php.net/manual/es/function.array-intersect.php)
$ZZ = array_intersect($LISTAS[$_POST['lst'][0]],$LISTAS[$_POST['lst'][1]]);
echo '<pre>';
//print_r permite mostrar un array en pantalla, sino lo podemos mostrar con echo, pero tenemos que recorrer todo el array con foreach o for
print_r($ZZ);
}
?>
No sé programar, por eso opto por flash (sé la programación básica en AS2), pero bueno, sería genial tenerlo para Java... sólo que pregunté ya presupuesto y 4.000 usd, y la verdad es que es algo que estamos haciendo por ahora sin interés económico, de pronto no se puede rentabilizar, no sé...
¿Y en Java qué necesitaría? aunque detesto ese loader de Java por no hablar que ahora saltó la alarma con el tema de virus...
el codigo que te arme es facil de entender.. y solo usa una funcion de php que saca lo que necesitas... en flash tendras que armar esa funcion a mano...
PHP:<?php //Creamos los array con cada linea $LISTAS['Linea A'] = array("1","3-1","5","7"); $LISTAS['Linea B'] = array("2-1","3-1","8","9-2"); $LISTAS['Linea C'] = array("1","2-1","9-2","10","14"); //mostramos en pantalla el formulario (esto lo que hacemos es recorrer todas las listas con foreach y con echo mostrar en pantalla los checkbox del formulario) echo '<form action="" method="POST">'; foreach($LISTAS as $K=>$L){ echo $K.'<input type="checkbox" name="lst[]" value="'.$K.'"><br/>'; } echo '<input type="submit">'; echo '</form>'; //verificamos que la cantidad de seleccionados sean 2 if(count($_POST['lst'])==2){ //vemos las listas seleccionadas y calculamos los que se juntan (http://php.net/manual/es/function.array-intersect.php) $ZZ = array_intersect($LISTAS[$_POST['lst'][0]],$LISTAS[$_POST['lst'][1]]); echo '<pre>'; //print_r permite mostrar un array en pantalla, sino lo podemos mostrar con echo, pero tenemos que recorrer todo el array con foreach o for print_r($ZZ); } ?>
---------- Post agregado el 28-ago-2013 hora: 16:34 ----------
tampoco tendria que ser en java... podrias armarlo en php y subirlo a una web y desde el mobil cualquiera puede entrar a esa web...
Ok, haré el intento en PHP, sólo que si rompo algo o si tengo que reparar algo me voy a quedar igual,jajajaa... por no hablar de que como te comentaba quiero ir más allá y hallar intersecciones, máximo 2 intercambios creo yo, es decir que de A, tomando el bus 1, 2, 3 se llegue a B
---------- Post agregado el 28-ago-2013 hora: 15:39 ----------
La idea en flash es para poder generar el mapa y hacerlo interactivo, pero veo que la programación ya sería muy diferente, y no tendría que cargar arrays, sino simplemente las rutas en el punto A y el punto B...
---------- Post agregado el 28-ago-2013 hora: 15:41 ----------
Por eso la idea de hacerlo por barrios, porque si tengo que meter los paraderos (unos 7000 en el futuro), me puedo volver majara...
Utilizamos cookies y tecnologías similares para los siguientes fines:
¿Aceptas las cookies y estas tecnologías?
Utilizamos cookies y tecnologías similares para los siguientes fines:
¿Aceptas las cookies y estas tecnologías?