Ver Mensaje Individual
  #6 (permalink)  
Antiguo 03/10/2012, 22:00
Avatar de truman_truman
truman_truman
 
Fecha de Ingreso: febrero-2010
Ubicación: /home/user
Mensajes: 1.341
Antigüedad: 14 años, 2 meses
Puntos: 177
Respuesta: Algun experto que me de una mano en php

Código PHP:
Ver original
  1. <?php
  2. //se recibe post jugador1
  3. $jugador1= $_POST['jugador1'];
  4. //inicializamos estas dos variables
  5. $palabra='';
  6. $resultado =  '';
  7. //capturamos la palabra completa, para guardarla en el campo hidden llamado palabra
  8. //pero como cuando venimos del primer formulario no existe el hidden "palabra" hacemos el else
  9. //que captura jugador1, y guardamos en la variable $palabra
  10. if (isset($_POST['palabra'])){
  11.     $palabra= $_POST['palabra'];
  12. }else{
  13.     if (isset($_POST['jugador1'])){
  14.         $palabra=$_POST['jugador1'];
  15.     }
  16. }
  17. //si recibimos $_POST['jugador2'] significa que hemos enviado el formulario 2
  18. //entonces empieza la magia de php
  19. if (isset($_POST['jugador2'])){
  20.     $jugador2= $_POST['jugador2']; //guardamos en esta variable la letra
  21.     //hacemos el ciclo for, contando la cantidad de caracteres que posee la palabra, que está en la variable $jugador1
  22.     for($i=0; $i<strlen($jugador1); $i++){
  23.         //se recorren las letras de la palabra y si alguna es igual a la letra que ingresó el usuario ($jugador2)
  24.        
  25.         if($jugador1[$i] == $jugador2){
  26.            
  27.             //entonces $resultado tendrá este texto
  28.             $resultado =  'La letra '.$jugador2.' coincide';
  29.             //eliminamos la letra de la palabra, la reemplazamos por un espacio vacío
  30.             $jugador1[$i] = " ";
  31.             //cortamos la ejecución del ciclo for, porque ya hemos encontrado una coincidencia
  32.             //aunque ahora que lo pienso, está mal, porque debería encontrar todas las coincidencias
  33.             //y no solo la primera, bueno, tarea para el hogar, Arreglar esto jejeje
  34.             break;
  35.         }else{
  36.             //si no hay coincidencia
  37.             $resultado =  'La letra '.$jugador2.' NO coincide';
  38.         }
  39.     }
  40.     //reemplazamos los espacios por nada
  41.     $jugador1 = str_replace(" ","",$jugador1);
  42.     //si jugador es igual a nada quiere decir que no tiene lertas, por lo tanto todas fueron adivinadas
  43.     if($jugador1 == ""){$resultado = '<h1>GANASTE!!!</h1>La palabra secreta era: '.$palabra;}
  44.    
  45. }
  46. echo "Jugador 2 intente adivinar";
  47. ?>
  48.        <form action="enviar.php" method="Post">
  49.        
  50.        
  51.        <!--guardamos la palabra completa original siempre en este campo oculto (hidden)
  52.        PARA VER MEJOR EL FUNCIONAMIENTO REEMPLAZAR EL CAMPO POT UNO DEL TIPO TEXT ASI VERÁS LOS RESULTADOS AL VUELO
  53.        <input name="palabra" type="text" value="<?php echo $palabra ?>" />
  54.        -->
  55.        <input name="palabra" type="hidden" value="<?php echo $palabra ?>" />
  56.        
  57.        
  58.        
  59.        <!--guardamos la palabra que se va achicando, por que en cada coincidencia se le elimina la letra, en este campo (hidden)
  60.        PARA VER MEJOR EL FUNCIONAMIENTO REEMPLAZAR EL CAMPO POT UNO DEL TIPO TEXT ASI VERÁS LOS RESULTADOS AL VUELO
  61.        <input name="jugador1" type="text" value="<?php echo $jugador1 ?>" />
  62.        -->
  63.        <input name="jugador1" type="hidden" value="<?php echo $jugador1 ?>" />
  64.        
  65.        
  66.        
  67.         Ingrese Una Letra :<input type="text" name="jugador2" size="1" />
  68.         <input type="submit" value="enviar formulario" />
  69.         </form>
  70.         <br><br>
  71. <?php
  72. //LOS MENSAJES QUE SE VAN GENERANDO
  73. echo $resultado ?>


Si querés un contador, podrías ir guardando en otro campo hidden e ir sumandole 1 a cada enviada del formulario, o tambien con variables de session
__________________
la la la