Foros del Web » Programando para Internet » PHP »

¿Saben sobre un error en IE en los uploads via PHP?

Estas en el tema de ¿Saben sobre un error en IE en los uploads via PHP? en el foro de PHP en Foros del Web. Que tal a todos! Quisiera saber si alguno esta al tanto sobre un problema que ocurre al subir archivos por medio de un script PHP ...
  #1 (permalink)  
Antiguo 11/05/2006, 21:39
 
Fecha de Ingreso: diciembre-2004
Mensajes: 721
Antigüedad: 19 años, 3 meses
Puntos: 2
¿Saben sobre un error en IE en los uploads via PHP?

Que tal a todos!

Quisiera saber si alguno esta al tanto sobre un problema que ocurre al subir archivos por medio de un script PHP utilizando Internet Explorer.

En mi caso, mi script funciona perfectamente con FIREFOX, pero si intento subir un archivo utilizando EXPLORER se queda "colgada" la pagina y jamas termina de cargar.

¿Tal vez es un error general?

Por las dudas, adjunto mi script, que depaso, quiza le sirva a alguno tambien.

Saludos !

Código PHP:
<?php
    session_start
();

    if (!
$_SESSION['user']) {
        
header("Location: /html_msgs/auth_error.php");
        exit();

    } else if (
$_SESSION['u_level'] == 0) {

        
header("Location: /html_msgs/user_ban.php");
        exit();
    }

    
/** ¿Estamos en el PASO 3? **/

    
if ($_SESSION['pm_paso'] != 3) {
        
header("Location: /html_msgs/pm/error1.php");
        exit();
    }

    
/*** Existe el resto de las variables ? ***/

    
if (!isset($_SESSION['pm_titulo']) || !isset($_SESSION['pm_texto']) || !isset($_SESSION['lic_cc_url']) ) {
        
header("Location: /html_msgs/pm/error1.php");
        exit();    
    }

// Fin control de datos

    
if (isset($_FILES['f_pm_upload']) ) {
        if(
is_uploaded_file($_FILES['f_pm_upload']['tmp_name'])) {
            
$ruta"./tmp_uploads/{$_FILES['f_pm_upload'] ['name']}";

            if (
$_FILES['f_pm_upload']['type'] == "audio/mpeg" || $_FILES['f_pm_upload']['type'] == "audio/mp3") {

                if (!
move_uploaded_file ($_FILES['f_pm_upload'] ['tmp_name'], $ruta) ) {

                    switch (
$_FILES['f_pm_upload'] ['error']) {
                        case 
1:
                                
$error "1";
                            
$msg "<b>*</b> El archivo es más grande de lo permitido";
                                break;
                        case 
2:
                                
$error "1";
                            
$msg "<b>*</b> El archivo es más grande de lo permitido";
                            break;
                        case 
3:
                                
$error "1";
                            
$msg "<b>*</b> Error en la transferencia. Por favor, vuelve a intentarlo.";
                            break;
                        case 
4:
                                
$error "1";
                            
$msg "<b>*</b> Error en la transferencia. Por favor, vuelve a intentarlo.";
                            break;
                     } 
// Switch

                
} else { // if (!move_uploaded...

                
}

            } else { 
// Si el archivo no corresponde al formato permitido...
                
$msg "<b>*</b> Archivo no válido!";
                
$error 1;
            }

        } else { 
// Si el archivo no esta subido en la carpeta temporal...
            
$msg "<b>*</b> No se especifico archivo!";
            
$error 1;
        }

    } 
// Si no existe el puntero hacia el array de archivos subidos...


    
if ($error == "1") {

        
$back "/pm/envio3.php?msg=".$msg;
        
header("Location: ".$back);

    } else {

        require_once(
$_SERVER['DOCUMENT_ROOT'].'/include/bd.php');
        include_once(
$_SERVER['DOCUMENT_ROOT'].'/include/fecha.php');

        
$fecha mysqldate();

    
// Registramos el ingreso de nuevo upload en carpeta temporal.

        
$sql "insert into pm_participacion (usuario, titulo, redaccion, archivo, fecha) values('".$_SESSION['user']."','".$_SESSION['pm_titulo']."','".$_SESSION['pm_texto']."','".$_FILES['f_pm_upload']['name']."','".mysqldate()."')";
        
$query mysql_query($sql) or die(mysql_error());
        
$_SESSION['pm_particip'] = "TRUE";



    
// Destruimos todas las variables de session utilizadas para el upload

        
$_SESSION['pm_titulo'] = ""; unset($_SESSION['pm_titulo']);
        
$_SESSION['pm_texto'] = ""; unset($_SESSION['pm_texto']);
        
$_SESSION['pm_paso'] = ""; unset($_SESSION['pm_paso']);


        
$back "/pm/envio_ok.php";
        
header("Location: ".$back);
    }

    
mysql_close($link);
?>
  #2 (permalink)  
Antiguo 11/05/2006, 23:17
Avatar de chalchis  
Fecha de Ingreso: julio-2003
Mensajes: 1.773
Antigüedad: 20 años, 9 meses
Puntos: 21
Sonrisa

a ver checate la informacion
de aqui creo que ya lo sabes
pero igual se te esta faltando algo

yo diria que probaras haciendo un script sencillo

http://www.rinconastur.net/php/php63a.php
__________________
gerardo
  #3 (permalink)  
Antiguo 12/05/2006, 01:47
 
Fecha de Ingreso: diciembre-2004
Mensajes: 721
Antigüedad: 19 años, 3 meses
Puntos: 2
¿Que tal chalchis?

Gracias por el link. La verdad es que apesar de que el script sea algo complejo (ya que inclui, sin pensarlo antes, mucho código que tiene importancia solo en el contexto de mi sitio), los procedimientos que siguen estan en orden.

Lo he vuelvo a chequear utilizando el link que me has dado, y los demás sitios que he visitado mientras armaba el script, pero todo parece estar en orden...

El formulario que LLAMA al PHP incluye...
Código PHP:
<form action='pm_upload.php' method='post' enctype='multipart/form-data'>
<
input type="hidden" name="MAX_FILE_SIZE" value="5242880" /> 
... parece estar bien también... por eso se me ocurró que el problema podria ser algo que a INTERNET EXPLORER no le está gustando.

Seguire revisando, gracias por tu ayuda.
  #4 (permalink)  
Antiguo 12/05/2006, 21:37
 
Fecha de Ingreso: diciembre-2004
Mensajes: 721
Antigüedad: 19 años, 3 meses
Puntos: 2
* * * * PROBLEMA SOLUCIONADO * * * *

Al parecer la gente de mi servidor tenia una configuración que conflictuaba con mi script. Cambiaron dicha configuración y ahora está funcionando tanto en IE como en FIREFOX.

Lamento no haber sabido esto de ante mano, y MUCHAS GRACIAS CALCHIS por tu interes en ayudarme :)
  #5 (permalink)  
Antiguo 13/05/2006, 07:46
Avatar de chalchis  
Fecha de Ingreso: julio-2003
Mensajes: 1.773
Antigüedad: 20 años, 9 meses
Puntos: 21
okas

que bueno

saludos
__________________
gerardo
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 05:09.