Foros del Web » Programando para Internet » PHP »

¿Cómo lo hago?

Estas en el tema de ¿Cómo lo hago? en el foro de PHP en Foros del Web. ¡Hola! Quiero crear un juego en PHP, parecido al quién es quién Tengo el planteamiento del funcionamiento, pero no sé cómo aplicarlo sin sobrecargar la ...
  #1 (permalink)  
Antiguo 05/11/2009, 09:44
(Desactivado)
 
Fecha de Ingreso: marzo-2008
Mensajes: 641
Antigüedad: 16 años, 8 meses
Puntos: 7
¿Cómo lo hago?

¡Hola! Quiero crear un juego en PHP, parecido al quién es quién

Tengo el planteamiento del funcionamiento, pero no sé cómo aplicarlo sin sobrecargar la base de datos.

El funcionamiento sería así:

__________________________________________________ _____________

-Al comenzar el juego se muestran x filas (serían más de mil), y se hace una pregunta, de respuesta sí o no... Entonces elimino todas las filas que NO cumplan con esa respuesta.

Ejemplo: ¿Es un hombre?... y si responde Sí... borro todas las filas en las que sea mujer, en caso contrario, las filas donde sea hombre.

-Luego otra pregunta, y otra... hasta que queda una sola fila, y esa sería la solución al juego.

¿Alguien sabe cómo podría hacerlo correctamente?

Saludos!
  #2 (permalink)  
Antiguo 05/11/2009, 10:01
Avatar de Fairy_Boy  
Fecha de Ingreso: octubre-2009
Ubicación: Kokiri Forest
Mensajes: 235
Antigüedad: 15 años, 1 mes
Puntos: 5
Respuesta: ¿Cómo lo hago?

pero...
para que mostrarlas antes de preguntar??
no seria mejor que cada ves que preguntes, luego las muestres?
y asi ir desechando filas y filas.
asi no mostraria todo en el 1° intento, preguntaria primero
y luego las muestra, y va usando los que le van quedando.
=)
  #3 (permalink)  
Antiguo 05/11/2009, 11:31
(Desactivado)
 
Fecha de Ingreso: marzo-2008
Mensajes: 641
Antigüedad: 16 años, 8 meses
Puntos: 7
Respuesta: ¿Cómo lo hago?

Gracias por tu respuesta... pero sigo sin entenderlo correctamente:

Ejemplo... hay 1000 filas, cada una tiene un campo llamado "colorpelo" y puede tener tres opciones (rubio, negro, pelirrojo)... Si me dice que es rubio, descarto todos los que NO sean rubios, pero si al mismo tiempo otro usuario está jugando y marca la opción de que es de pelo negro... entonces este ya estaría descartado, y lo que intento es que jueguen los usuarios que jueguen, ninguno interfiera al otro

Saludos y espero que me entiendan!
  #4 (permalink)  
Antiguo 05/11/2009, 11:36
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Tokyo - Japan !
Mensajes: 3.867
Antigüedad: 15 años, 1 mes
Puntos: 334
Respuesta: ¿Cómo lo hago?

es como un filtrado?...
seria bueno que usaras sql...
asi seria mas facil... por ejemplo

tabla
preg1 - preg2 - preg3 - texto

entonces si no has echo ninguna pregunta.. mostrar todo.. despues empiezas a filtrar...
si preg1 es true.. mostrar solo las que en preg 1 tengan true.. etc.. saludos! ojala sirva la idea
  #5 (permalink)  
Antiguo 05/11/2009, 11:41
Avatar de Fairy_Boy  
Fecha de Ingreso: octubre-2009
Ubicación: Kokiri Forest
Mensajes: 235
Antigüedad: 15 años, 1 mes
Puntos: 5
Respuesta: ¿Cómo lo hago?

Esque no tendrian porque interferir un usuario con otro.
ya que solo harias selects no updates.
y a partir de los resultados de un select arrojado por la
respuesta a la pregunta efectuada, tener un resultad que mostrar y ademas
ir dejandolo como "el universo" en donde seguir buscando.
nose si me entiendo :S
  #6 (permalink)  
Antiguo 05/11/2009, 11:47
(Desactivado)
 
Fecha de Ingreso: marzo-2008
Mensajes: 641
Antigüedad: 16 años, 8 meses
Puntos: 7
Respuesta: ¿Cómo lo hago?

Gracias de nuevo, por las respuestas tan rápidas... pero es que si hago un select por cada pregunta, el resultado anterior se borra...

Ejemplo, si la primera pregunta es: "colordepelo"... me saca todos los que tengan color de pelo rubio. Pero ahora tengo que hacer una segunda pregunta, para seguir descartando filas... Y sería esto... De los resultados con colordepelo rubio, descartar los que tengan "ojosgrandes".... y así seguir descartando filas, según las respuestas que me da el usuario... pero para eso tendría que tener TODOS los datos, y ir borrando los que NO coinciden con la respuesta... Pero esto es lo que no se muy bien cómo hacer...

Saludos y gracias de nuevo por el tiempo
  #7 (permalink)  
Antiguo 05/11/2009, 11:49
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Tokyo - Japan !
Mensajes: 3.867
Antigüedad: 15 años, 1 mes
Puntos: 334
Respuesta: ¿Cómo lo hago?

pasa el dato de pagina en pagina con un input hidden...
asi filtras ambos resultados..
  #8 (permalink)  
Antiguo 05/11/2009, 11:54
(Desactivado)
 
Fecha de Ingreso: marzo-2008
Mensajes: 641
Antigüedad: 16 años, 8 meses
Puntos: 7
Respuesta: ¿Cómo lo hago?

Ok, entonces sería... SELECT * FROM `datos` WHERE `dato1`='resp1', `dato2`='resp2'....

Es una buena idea... El problema es que el juego consta de unas 22 preguntas... Y no sé si es recomendable filtrar 22 campos...

La tabla tiene 22 campos y 1031 filas

Saludos!
  #9 (permalink)  
Antiguo 05/11/2009, 11:55
Avatar de Fairy_Boy  
Fecha de Ingreso: octubre-2009
Ubicación: Kokiri Forest
Mensajes: 235
Antigüedad: 15 años, 1 mes
Puntos: 5
Respuesta: ¿Cómo lo hago?

Lo otro seria que tomaras los datos de la BD
ponerlos en un array muuuy largo xD
y ahi ir comparando, los tendrias guradados de todos modos,
asi que seria una sola consulta.
luego es cosa de ir descartando los que no son.
  #10 (permalink)  
Antiguo 05/11/2009, 11:57
(Desactivado)
 
Fecha de Ingreso: marzo-2008
Mensajes: 641
Antigüedad: 16 años, 8 meses
Puntos: 7
Respuesta: ¿Cómo lo hago?

Cita:
Iniciado por Fairy_Boy Ver Mensaje
Lo otro seria que tomaras los datos de la BD
ponerlos en un array muuuy largo xD
y ahi ir comparando, los tendrias guradados de todos modos,
asi que seria una sola consulta.
luego es cosa de ir descartando los que no son.

Esto me interesa más, pero cómo descartaría datos en un array?
  #11 (permalink)  
Antiguo 05/11/2009, 12:06
Avatar de Fairy_Boy  
Fecha de Ingreso: octubre-2009
Ubicación: Kokiri Forest
Mensajes: 235
Antigüedad: 15 años, 1 mes
Puntos: 5
Respuesta: ¿Cómo lo hago?

mmm podrias hacerlo con ifs
o en otro de los casos con un switch case
=)
  #12 (permalink)  
Antiguo 05/11/2009, 16:01
(Desactivado)
 
Fecha de Ingreso: marzo-2008
Mensajes: 641
Antigüedad: 16 años, 8 meses
Puntos: 7
Respuesta: ¿Cómo lo hago?

Hola de nuevo!

He probado... pero no funciona, ya que lo que necesitaría entonces es generar otro array y meter en él los resultados NO descartados...

Saludos.... ¿cómo puede hacerse de otro modo?
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 22:30.