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 caso de que el jugador2 solo meta una letra puedes utilizar stristr.
<?php
$palabra = 'omgwtf';
$letra = 'w';
if(stristr($palabra,$letra)){echo 'La letra '.$letra.' coincide.';}else{echo 'No coincide';}
?>
Te retornaría algo así:
La letra w coincide.
Si son 2 palabras y quieres comparar que letras coinciden...
<?php
$palabra = 'omgwtf';
$palabra2 = 'shit';
function comparar($palabra1,$palabra2){
// Obtener tamaño de palabra.
$len = mb_strlen($palabra2);
// Por cada letra
for($i=0; $i<$len;$i++){
// Comparar la letra con palabra1
// Si coincide meterla en array($coinciden).
if(stristr($palabra1,$palabra2[$i])){$coinciden[]=$palabra2[$i];}
}
// Si $coinciden no esta definido... retornar false.
// Si no retornar array.
if(!isset($coinciden)){return false;} else {return $coinciden;}
}
print_r(comparar($palabra,$palabra2));
?>
Retornaría:
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
<?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
Ponlo exactamente como lo haces...
Saludos
No se porque no funciona
<?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";
?>
-->
Siempre printea los valores a ver que tiene :D
Muestranos el resultado!