elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: (TUTORIAL) Aprende a emular Sentinel Dongle By Yapis


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  PHP (Moderador: #!drvy)
| | | |-+  ¿Comparar dos cadenas de caracteres en php?
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: ¿Comparar dos cadenas de caracteres en php?  (Leído 11,092 veces)
Netstat89

Desconectado Desconectado

Mensajes: 5


Ver Perfil
¿Comparar dos cadenas de caracteres en php?
« en: 1 Octubre 2012, 12:57 pm »

Tengo el primer formulario: llamado index.html

<html>
<body>

<title> Ahorcado </title>
<form action="enviar.php" method="Post">
Ingrese palabra a adivinar :<input type="text" name="jugador1" />
<input type="submit" value="enviar formulario" />
</form>

</body>
</html>


Tengo el segundo formulario: llamado enviar.php

?php

$jugador1= $_POST['jugador1'];


?>

<?

echo "Jugador 2 intente adivinar";

?>

<br><br>



<form action="enviar.php" method="Post">
Ingrese Una Letra :<input type="text" name="jugador2" size="1" />
<input type="submit" value="enviar formulario" />
</form>

<br><br>

<?

$contador= strlen($jugador1);
print "La Palabra ingresada Tiene $contador Letras";


?>

<br>

<?
$jugador2= $_POST['jugador2'];

if(isset($_POST['jugador2'])){

if ($jugador1[0]==$jugador2[0]);{
echo "ok";
}else{

echo "no";
}
}

?>


Mi problema es que quiero compar lo ingresado en el campo jugador1 con la letra del campo jugador2, osea quiero comparar si existe una letra igual de la que ingrese en la variable $jugador2 con la palabra ingresada en la variable $jugador1 y que la muestra en la pantalla, o mejor dicho que cada vez que hacierte una letra se valla formando la palabra oculta.


En línea

#!drvy
Moderador
***
Desconectado Desconectado

Mensajes: 5.855



Ver Perfil WWW
Re: ¿Comparar dos cadenas de caracteres en php?
« Respuesta #1 en: 1 Octubre 2012, 16:27 pm »

En caso de que el jugador2 solo meta una letra puedes utilizar stristr.
Código
  1. <?php
  2. $palabra = 'omgwtf';
  3. $letra = 'w';
  4.  
  5. if(stristr($palabra,$letra)){echo 'La letra '.$letra.' coincide.';}else{echo 'No coincide';}
  6. ?>

Te retornaría algo así:
Código
  1. La letra w coincide.

Si son 2 palabras y quieres comparar que letras coinciden...
Código
  1. <?php
  2. $palabra = 'omgwtf';
  3. $palabra2 = 'shit';
  4.  
  5. function comparar($palabra1,$palabra2){
  6.   // Obtener tamaño de palabra.
  7.   $len = mb_strlen($palabra2);
  8.   // Por cada letra
  9.   for($i=0; $i<$len;$i++){
  10.      // Comparar la letra con palabra1
  11.      // Si coincide meterla en array($coinciden).
  12.      if(stristr($palabra1,$palabra2[$i])){$coinciden[]=$palabra2[$i];}
  13.   }
  14.   // Si $coinciden no esta definido... retornar false.
  15.   // Si no retornar array.
  16.   if(!isset($coinciden)){return false;} else {return $coinciden;}
  17. }
  18.  
  19. print_r(comparar($palabra,$palabra2));
  20. ?>

Retornaría:
Código
  1. Array ( [0] => t )
Se podrá hacer algo mejor supongo... pero te sirve de ejemplo.

PD: Por favor usa las etiquetas [code=php][/code] o [code=html4strict][/code] para meter el código. Se nos hace mas fácil leerlo.

Saludos


« Última modificación: 1 Octubre 2012, 16:31 pm por drvy | BSM » En línea

Netstat89

Desconectado Desconectado

Mensajes: 5


Ver Perfil
Re: ¿Comparar dos cadenas de caracteres en php?
« Respuesta #2 en: 1 Octubre 2012, 17:03 pm »

Código:

<?php

       $jugador2= $_POST['jugador2'];
       if(isset($_POST['jugador2'])){
   
 
 if(stristr($jugador1,$jugador2)){echo 'La letra '.$jugador2.' coincide.';}else{echo 'No coincide';}
 }
?>


Me quedo algo asi, pero aunque pongon en jugador1=casa y despues pongo en jugador2= s, me da que no coincide
En línea

#!drvy
Moderador
***
Desconectado Desconectado

Mensajes: 5.855



Ver Perfil WWW
Re: ¿Comparar dos cadenas de caracteres en php?
« Respuesta #3 en: 1 Octubre 2012, 18:43 pm »

Ponlo exactamente como lo haces...

Saludos
En línea

Netstat89

Desconectado Desconectado

Mensajes: 5


Ver Perfil
Re: ¿Comparar dos cadenas de caracteres en php?
« Respuesta #4 en: 1 Octubre 2012, 20:10 pm »

No se porque no funciona

 
Código:
<?php

$jugador1= $_POST['jugador1'];



?>



<?

echo "Jugador 2 intente adivinar";

?>

<br><br>



       <form action="enviar.php" method="Post">

       Ingrese Una Letra :<input type="text" name="jugador2" size="1" />

       <input type="submit" value="enviar formulario" />

      

  <?php



       $jugador2= $_POST['jugador2'];

       if(isset($_POST['jugador2'])){

 

    
        

              if(stristr($jugador1,$jugador2)){print "Coinciden";} else {print "No Coincide";}

              
      
}

?>



 

        



       </form>

       <br><br>


<!-- <?

$contador= strlen($jugador1);

print "La Palabra ingresada Tiene $contador Letras";


?>
-->

      
« Última modificación: 1 Octubre 2012, 20:58 pm por Netstat89 » En línea

Shell Root
Moderador Global
***
Desconectado Desconectado

Mensajes: 3.724


<3


Ver Perfil WWW
Re: ¿Comparar dos cadenas de caracteres en php?
« Respuesta #5 en: 1 Octubre 2012, 21:21 pm »

Siempre printea los valores a ver que tiene :D

Muestranos el resultado!
En línea

Te vendería mi talento por poder dormir tranquilo.
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Error al comparar cadenas
Programación C/C++
amchacon 1 2,573 Último mensaje 26 Enero 2013, 15:28 pm
por amchacon
Error al comparar cadenas en estructuras
Programación C/C++
ramona98 3 3,035 Último mensaje 28 Agosto 2013, 10:23 am
por do-while
Cadenas de caracteres. Función para comparar una cadena ignorando signos. C++
Programación C/C++
seryioo 1 3,980 Último mensaje 12 Agosto 2015, 13:50 pm
por ivancea96
Ayudaa!!! comparar cadenas de caracteres
Programación C/C++
judithmateos 7 3,772 Último mensaje 18 Diciembre 2016, 03:59 am
por crack81
Problema al comparar cadenas de caracteres [C]
Programación C/C++
S4ms3pi0l__ 3 3,253 Último mensaje 27 Noviembre 2017, 20:00 pm
por MAFUS
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines