Que tal amigos del foro.
En el codigo (ver abajo) intento validar una cadena de texto con otra alojada en una SESSION. Esto desde el archivo valCaptcha.php y el resultado ("f" o "v") deseo me lo coloque en el textfield2. El problema es que en el segundo campo, me aparece "undefined". ¿Alguien me puede ayudar con mi problema?
NOTA: Ya intente tanto "ajax.open("GET","..",false)" como "ajax.open("GET","..",true)"
Saludos!
Nombre del archivo index.php
Cita: <?php
session_start();
$_SESSION["captcha"] = 'Prueba';
?>
..
<script type="text/javascript">
<!--
function nuevoAjax(){
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
return xmlhttp;
}
var retVal;
function validaCaptcha(texto){
if (texto != ''){
ajax = nuevoAjax();
ajax.open("GET","valCaptcha.php?t="+texto,false);
ajax.send(null);
ajax.onreadystatechange=function() {
if (ajax.readyState==4 ) {
retVal = ajax.responseText;
}
result = retVal;
}
}else{
result = "f";
}
}
function val(texto){
document.getElementById('textfield2').value = validaCaptcha(texto);
}
//-->
</script>
</head>
<body>
<input type="text" name="textfield" id="textfield" />
<input type="submit" name="button" id="button" value="Enviar" onClick = "val(document.getElementById('textfield').valu e);"/>
<br /><br /><input type="text" name="textfield2" id="textfield2" />
</body>
...
el codigo anterior llama a este archivo: valCaptcha.php
Cita: <?php
session_start();
$txtUsr = $_GET["t"];
if (!isset($_SESSION["captcha"]))
{
echo "captcha no definido";
exit();
}
if ($txtUsr == '' || $txtUsr != $_SESSION["captcha"])
{
echo "f";
}else
{
echo "t";
}
?>