Hola a todos:
A ver si alguien me puede iluminar... He creado un form que dirige el valor de un input file a la página check.php. En ckeck se comprueba que la extensión sea la adecuada y devuelve un mensaje. Con un sólo campo funciona perfecto pero con dos campos se vuelve loco.
Así que, si alguien puede dar con la solución le estaría agradecido.
Saludos
 
 
///////////////////////////////////////
// PAGINA FORM
///////////////////////////////////////
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Prueba foto</title>
<script language="javascript" type="text/javascript" src="ajax.js"></script>
<style type="text/css">
#respuesta1{font-family:Verdana, Arial, Helvetica, sans-serif; font-size:9px; color:#7D7D7D; width:320px; align:left}
 
</style>
 
 
</head>
 
<body>
<form id="form1" name="form1" method="post" action="">
<input type="file" name="foto1" id="foto1"  onblur="from(document.getElementById('foto1').valu  e,'respuesta1','check.php','1')"/><br/>
<div id="respuesta1"></div>
<br />
<input type="file" name="foto2" name="foto2" onblur="from(document.getElementById('foto2').valu  e,'respuesta2','check.php','2')"/><br/>
<div id="respuesta2"></div>
</form>
</body>
</html>
 
///////////////////////////////////////
//PAGINA CHECK.PHP
///////////////////////////////////////
<?php
$foto1 = $_GET['id'];
$pos = $_GET['pos'];
$foto_Ex = strtolower($foto1);
$foto_Ex = explode('.', $foto_Ex);
//echo $s_foto[1];
sleep(1);
if ($foto_Ex =="jpg" || $foto_Ex =="gif" || $foto_Ex =="png"){
echo '<img src="img/ok.gif" /> La imagen <strong>' .$_GET['id'] .' es de tipo correcto';
$_SESSION['pos'] = $pos;
}
else {
echo '<img src="img/error.png" /><strong>' .$_GET['id'] . "</strong> El tipo de imagen NO ES EL ADECUADO. Debe ser jpg, gif o png ".$_GET['pos'];
}
?>
 
 
///////////////////////////////////////
// PAGINA AJAX.JS
///////////////////////////////////////
function obtiene_http_request()
{
var req = false;
try
  {
    req = new XMLHttpRequest(); /* p.e. Firefox */
  }
catch(err1)
  {
  try
    {
     req = new ActiveXObject("Msxml2.XMLHTTP");
  /* algunas versiones IE */
    }
  catch(err2)
    {
    try
      {
       req = new ActiveXObject("Microsoft.XMLHTTP");
  /* algunas versiones IE */
      }
      catch(err3)
        {
         req = false;
        }
    }
  }
return req;
}
var miPeticion = obtiene_http_request();
//**************************************************  *************************************
function from(id,ide,url,pos){
		var mi_aleatorio=parseInt(Math.random()*99999999);//para que no guarde la página en el caché...
		var vinculo=url+"?id="+id+"&pos="+pos+"&rand="+mi_alea  torio;
		//alert(vinculo);
		miPeticion.open("GET",vinculo,true);//ponemos true para que la petición sea asincrónica
		miPeticion.onreadystatechange=miPeticion.onreadyst  atechange=function(){
               if (miPeticion.readyState==4)
               {
				  //alert(miPeticion.readyState);
                       if (miPeticion.status==200)
                       {
                                //alert(miPeticion.status);
                               //var http=miPeticion.responseXML;
                               var http=miPeticion.responseText;
                               document.getElementById(ide).innerHTML= http;
 
                       }
               }else
               {
			document.getElementById(ide).innerHTML="<img src='img/loader.gif' title='cargando...' />";
 
                }
       }
       miPeticion.send(null);
 
} 
  
 
 
 

