[Php-avanzado] No me funciona el "header("Location...)
Mario Gomez Cassou
chompi2006 en yahoo.com.ar
Mie Jul 14 01:22:28 ART 2010
Hola Leo:
tal cual, puse un print y los if's estaban bien
Puse "exit()" dentro de los if's y la cosa funciono como siempre.
Tenia los seteos de mi Apache afinaditos y al hacer una reinstalación de cero quedaron como se le canto a Ubuntu 10.04 (o a lo que sea porque eso lo puse despues)
Tambien me pasa con Apache en la compu portatil al ejecutar el codigo PHP
if(ereg('Cliente',$v)) {$v = '`cliente`';}
if(ereg('Postal',$v)) {$v = '`cp`';}
if(ereg('Remito',$v)) {$v = '`planilla`';}
por cada "ereg" me reta con un "Deprecated!!" o algo asi, pero despues de llamarme al orden igual lo hace bien.
Son misterios que van a estar mejor que "cine de super accion" para un sabado a la tarde pero ahora me corre el tiempo para entregar este trabajito
Muchas gracias por la ayuda recibida
Saludos
Mario
El día 13 de julio de 2010 15:43, Leonardo Tadei - Pegasus Tech Supply <leonardot en pegasusnet.com.ar> escribió:
> Hola Mario,
>
> asumiendo que "pasar de largo como colectivo lleno" sea que siempre
> ejecuta el header("Location: dbf2.php"), debería significar que no entra
> en ninguno de los 3 ifs anteriores.
> Ponete un print() antes de cada IF con el valor a evaluar, a ver si
> estás leyendo bien los datos.
>
> Si los datos llegan bien, podría ser que alguna configuración del PHP
> mantenga los datos en un buffer y se los envíe al navegador cuando
> termina, como cuando se usan las funciones ob_start() [1] y ob_ flush()
> [2]. En ese caso, deberías poner un exit() [3] dentro de los IF para
> forzar la terminación del script.
>
>
> [1] http://ar.php.net/manual/en/function.ob-start.php
> [2] http://ar.php.net/manual/en/function.ob-flush.php
> [3] http://ar.php.net/manual/en/function.exit.php
>
> El mar, 13-07-2010 a las 05:50 -0700, Mario Gomez Cassou escribió:
>> En un una pagina tengo que subir un archivo de excel (xls) desde un formulario. En la pagina a la que apunta el "<form action=..." primero chequeo que se haya efectivamente se haya seleccionado un archivo, despues que no este vacio y por ultimo que tenga extension "xls".
>> En cualquiera de estos casos que no se cumpla la condicion lo mando para atras con un mensaje de error.
>> Esto lo vengo usando en distintas situaciones sin problemas y ahora no me esta funcionando, pasa de largo como colectivo lleno.
>> Se agradecen sugerencias, abajo va el codigo
>> Saludos
>> Mario
>>
>>
>> <?php
>>
>> // ------- Si no se subió un archivo -------------
>> if (!isset($_POST["botonazo"])) {
>> header("Location: index.php?err=1");
>> }
>>
>> // prueba que no sea un archivo vacío
>> $s1 = $_FILES["datos"]["size"];
>> if(!($s1>0)){
>> header("Location: index.php?err=2");
>> }
>>
>> // Prueba el nombre del archivo
>> $n1 = $_FILES["datos"]["name"];
>> $ext =substr($n1,-4);
>> if($ext != ".xls" && $ext != ".XLS") {
>> header("Location: index.php?err=3");
>> }
>>
>> // Mueve el archivo al directorio "subidos"
>> move_uploaded_file($_FILES["datos"]["tmp_name"], "subidos/datos.xls");
>>
>> // Pasa a la siguiente etapa: meter los datos en tablas mysql
>> header("Location: dbf2.php");
>> ?>
>>
>>
>>
>> _______________________________________________
>> Php-avanzado mailing list
>> Php-avanzado en pato2.fi.mdp.edu.ar
>> http://www3.fi.mdp.edu.ar/cgi-bin/mailman/listinfo/php-avanzado
>
> --
>
> Leonardo Tadei
> leonardot en pegasusnet.com.ar
> http://blog.pegasusnet.com.ar
> Firma pública: http://www.pegasusnet.com.ar/LeonardoTadei-public.key
>
> _______________________________________________
> Php-avanzado mailing list
> Php-avanzado en pato2.fi.mdp.edu.ar
> http://www3.fi.mdp.edu.ar/cgi-bin/mailman/listinfo/php-avanzado
>
Más información sobre la lista de distribución Php-avanzado