- Un formulario de registro. Diseñado a su consideración (listo).
- Un archivo de procesamiento del formulario que guarda los registros en un archivo de texto plano (listo).
- Una página que despliega el total de registros y un conteo de votos por usuario registrado (en proceso).
Existen otras consideraciones técnicas que iremos agregando a los ejercicios, pero este es un buen momento para realizar algunas reflexiones del diseño y de la lógica que presenta el ejercicio. Algunas a tomar en cuenta son:
- Hay algún valor en el registro guardado que me permita contabilizar el número de votos para una persona?
- ¿Existe una manera única de identificar a un participante, como para evitar registros con nombres distintos que se refieren a una misma persona?
- ¿Tenemos control de la información que recibimos?, es decir, si la información nos permite clasificar, catalogar y discriminar entre los registros obtenidos.
- ¿Como sabemos si los registrados son válidos?, que son reales y no ficticios.
- ¿votos indefinidos o solo un voto por estudiante?, el primero al estilo de los "reality show" en donde votas las veces que quieras por alguien, o el segundo como en las elecciones, que solo puede emitirse un voto por participante.
15 comentarios:
OK compañeros un link de php que nos facilita la vida para con los ejercicios. Y aguas para los adictos a php. Saludos
Por el momento estamos utilizando texto plano, y una de las formas de generar cuentas es realizar un formulario de registro que pida datos y guarde los mismos pidiendo una clave desde luego a cada usuario, considerando un limite de altas con respecto al b somos 26 limitando asi las altas, y posteriormente estos datos unicamente el nombre de todos será desplegado en un listbox lo cual hara que cuando votes u opines te genere un registro de ciertos eventos y asi controlar a cada usuario para accesar a dichos eventos, y asignar variables para los que sean votados. Es mi opinión.
---------------------ARCHIVO.TXT-----------------------
fulano,6b,clave,variable1,variable2,variable3,variableN
mengano,6b,clave,variable1,variable2,variable3,variableN
sotano,6a,clave,variable1,variable2,variable3,variableN
donde variable1 puede ser 0 o 1, si eres 0 votas y reemplazo con 1, entras nuevamente si eres 1 ya no puedes votas, y las demas variables pueden ser otros posibles casos,ya lo demas es pura lógoca de programación de cada quien.
ok, lo controlas con una bandera, es un principio básico de validación. Buena sugerencia. Respecto a la primera, estaría muy bien tener un primer formulario donde se den de alta quienes pueden votar (algo así como un registro electoral), pero para este caso podríamos usar directamente el listbox, pues como dices, solo son 26 personas, pero eso sí, que el listbox se llene con los 26 nombres tomados de un archivo externo, para facilitar la edición posterior, si es que fuese necesario agregar o eliminar algún participante.
Sigan aportando! cualquier sugerencia, pregunta o comentario es bienvenido.
Ok, por eso le digo que lo demas es la lógica que emplee uno mismo.
Solo lógica?
Entonces como puedo hacer para que cuando muestre los resultados no muestre los datos repetidos. Por ejemplo si están guerdados los datos así:
---------------------ARCHIVO.TXT-----------------------
fulano,6a,numVoto,Carac1,Carac2,Carac3,Carac4,Carac5
mengano,6a,numVoto,Carac1,Carac2,Carac3,Carac4,Carac5
sotano,6a,numVoto,Carac1,Carac2,Carac3,Carac4,Carac5
mengano,6a,numVoto,Carac1,Carac2,Carac3,Carac4,Carac5
fulano,6a,numVoto,Carac1,Carac2,Carac3,Carac4,Carac5
fulano,6a,numVoto,Carac1,Carac2,Carac3,Carac4,Carac5
donde numVoto es el número de votaciones totales para esa persona, (y que además va aumentando) y Carac1-5 son los otros datos (características).
Como entonces se podrían asociar las líneas de texto para no repetirlas cuando se muestren en pantalla y que además conserve los valores que contienen Carac1-5...
Me pregunto yo...
Que solución hay ante esto??!!...
Lees cada linea y la guardas dentro de un arreglo, posteriormente explotas cada linea de datos de tu arreglo lo cual te generará un nuevo arreglo de datos en cada indice de tu primer arreglo arreglo y ¡LISTO!, obtienes tus datos.
1)---------------------ARCHIVO.TXT-----------------------
arrreglox[1]=fulano,6a,numVoto,Carac1,Carac2,blabla.
arrreglox[2]=sotano,6a,numVoto,Carac1,Carac2,blabla.
2)-----explotas arrreglox[1]--------
arrreglox[1][1]=fulano
arrreglox[1][2]=6aa
arrreglox[1][3]=NumVoto
arrreglox[1][4]=Carac1
etc.........
-----si no quieres explotar(2) usas funciones de substring,whiles o for's y susbtraes los datos.
POR ESO DIGO SEGUN TU LOGICA. JDPP.
Como sugiere JDPP, es cuestión de lógica, hay múltiples soluciones,algunas mejores que otras por diversos factores, pero si funciona, cualquiera es aceptada.
Ahora, si entendí bien, la pregunta es que quieres mantener los votos en un solo lugar, por un solo usuario, pero mantener los otros datos de cada uno; alguien propuso en su momento crear un archivo de texto por cada participante:
-----------alumno1.txt---------------
numvotos=30
carac1,carac2,carac4
carac3,carac4,carac5
carac2,carac3,carac4,carac5
de esta forma,usas el contador para los votos, y guardas una línea con la información que cedió el votante, y no te preocupas por la repetición, ya que estás grabando en la del alumo que es votado en el momento. Espero que te sirva, o haya comprendido correctamente tu pregunta. Saludos
Y que hay de las caracteristicas?
Aún controlando el número de votaciones en archivos a parte, ¿De qué forma puedo interpretar la información obtenida de las características?...
ah!, hablamos de la "usabilidad" de la información. Ciertamente interpretar la información proporcionada por las características implica otra clase de conocimientos, de hecho, un instrumento de medición cualitativo, lo cuál no nos concierne en este momento, pero si el armar una matriz (tabla) con esos datos, cada columna para una característica y las celdas indicando cuales fueron elegidas, con un conteo final del número de veces que una característica fue elegida.
En otras palabras, la interpretación de esa información queda a decisión de quien evalúa. Espero que esa haya sido tu pregunta. Saludos.
O sea que, además de contar los votos que tiene cada persona, ¿también debemos contar qué características fueron elegidas en cada votación?
Calmado Mr. JDPP solo los votos, ya es decisión tuya si quieres mostrar las demas caracteristicas, la intensión es que muestre el número de votos que tiene cada quien. lo de las caracteristicas son variables que en un momento te pueden servir para algo. como comente al principio del posteo. Ya vostaste,fecha cuando votaste,hora,blabla...
Ok Master JD gracias por el consejo.
porque tanta dicusion el primer y unico JD es el luchador del amor es conocido como santina marella.
UNA AYUDADITA PARA LOS QUE QUIERA MEJORAR SU INFO EL EL TRABAJO DEL PARCIAL 2
MARCIA LUCINDA SANTOS VERDUGO, MARIA CANDELARIA JIMENEZ BITO, JESUS RICARDO POOL PECH, IRVING ARMIN SOBERANIS LAVADORES, RAMIREZ CASTILLO VICTOR MANUEL,DANIELA MAYTE POOL CANUL,CANUL MAY NIDELFIA ROSANA,MARIA VERONICA KU CHAN,FELIPE ERNESTO CHAN POOT, LUIS FDO. CASANOVA RIVERA, LANDY BEATRIZ DZIB PECH,ERIK LEONEL PUC PISTE,CRUZ DOMINGUEZ ANEL EUNICE,FLORES PERAZA JUAN GILBERTO,SOSAYA MARTIN MARIA JOSE,PECH CAN MAYRA FABIOLA,KANTÚN POOL YESENIA DE FATIMA,MILDRED ANDREA SOSA HUCHIM,CHAN PEREIRA REINALDO ARTURO,PUC CHI JUAN FELIPE, KUK OJEDA JONATHAN SAID
CLAUDIA ALEJANDRA VERA BALAM, BURGOS BRACAMONTE MIGUEL JESÚS, DAVID JHONATAN CHAN MAC, MARCELA CHALE CATZIN, RUSSEL CRUZ RODRIGUEZ, SERGIO CANUL CANUL, JOSE GERARDO UICAB MARTINEZ, KEYLA ROSA CUPUL MARTÍNEZ, JOSE ANSELMO POOL PECH, JOSE LUIS CRUZ CAUICH, MUKUL CAUICH ROSA CARMINIA, FAUSTINO SANTOS PINO, SANCHEZ SANTIAGO HERMAN FERNANDO, LUIS MIGUEL TUYU PECH, MARIA ISABEL MENDEZ GOROSICA, ELDA NOEMI CUA LOPE, ALEJANDRO ESPADAS MOGUEL
LOS QUE NO APARECEN ES QUE NO DEJAN RASTRO EN EL PORTAL.
Publicar un comentario
Recuerden usar su cuenta con nombre real, de lo contrario el comentario no se publicará ni será considerado como enviado.