Foros del Web » Programando para Internet » PHP »

problema al chequear el formato para upload

Estas en el tema de problema al chequear el formato para upload en el foro de PHP en Foros del Web. Hola, estoy tratando de que los archivos a subir en un upload solo sean .pdf Lo que hago e slo siguiente: $nombre_corto = $HTTP_POST_FILES['up_file']['name']; $tipo_archivo ...
  #1 (permalink)  
Antiguo 12/12/2006, 09:03
 
Fecha de Ingreso: junio-2005
Mensajes: 337
Antigüedad: 18 años, 11 meses
Puntos: 1
problema al chequear el formato para upload

Hola, estoy tratando de que los archivos a subir en un upload solo sean .pdf
Lo que hago e slo siguiente:
$nombre_corto = $HTTP_POST_FILES['up_file']['name'];
$tipo_archivo = $HTTP_POST_FILES['up_file']['type'];
$extension = explode(".",$nombre_corto);
$num = count($extension)-1;
if($extension[$num] == "pdf")
{
move_uploaded_file($HTTP_POST_FILES['up_file']['tmp_name'], realpath('.') . '/' . $nombre_corto)
echo "archivo subido con exito";
}
else
{
echo "el formato de archivo no es valido, solo .pdf";
}
el error que me sale es el siguiente:
Parse error: parse error, unexpected T_ECHO on line 25, que es la linea donde dice

echo "archivo subido con exito";

Que estoy haciendo mal?? espero ayuda! gracias!
  #2 (permalink)  
Antiguo 12/12/2006, 09:07
 
Fecha de Ingreso: enero-2005
Ubicación: Barcelona
Mensajes: 1.473
Antigüedad: 19 años, 3 meses
Puntos: 10
Re: problema al chequear el formato para upload

Hola!
puede ser q te falta un ; al final de la linia 24????
Código PHP:
move_uploaded_file($HTTP_POST_FILES['up_file']['tmp_name'], realpath('.') . '/' $nombre_corto);
echo 
"archivo subido con exito"
saludos
__________________
"Cada hombre es el hijo de su propio trabajo"
Miguel de Cervantes Saavedra
"La experiencia es algo que no consigues hasta justo depués de necesitarla"
Laurence Olivier
  #3 (permalink)  
Antiguo 12/12/2006, 09:14
 
Fecha de Ingreso: junio-2005
Mensajes: 337
Antigüedad: 18 años, 11 meses
Puntos: 1
Re: problema al chequear el formato para upload

perfecto!! pregunta...como puedo hacer para que me salga un alert tipo java? o un msgbox? diciendo que solo se admiten pdf?
porque le puse un exit pero queda feo...
gracias nuevamente!
  #4 (permalink)  
Antiguo 12/12/2006, 09:21
 
Fecha de Ingreso: enero-2005
Ubicación: Barcelona
Mensajes: 1.473
Antigüedad: 19 años, 3 meses
Puntos: 10
Re: problema al chequear el formato para upload

hola!
eso lo puedes hacer con javascript.

Código PHP:
echo "<script>alert (Tipo de archivo incorrecto! Solo se admiten PDF!!')</script>"
saludos
__________________
"Cada hombre es el hijo de su propio trabajo"
Miguel de Cervantes Saavedra
"La experiencia es algo que no consigues hasta justo depués de necesitarla"
Laurence Olivier
  #5 (permalink)  
Antiguo 12/12/2006, 09:37
 
Fecha de Ingreso: junio-2005
Mensajes: 337
Antigüedad: 18 años, 11 meses
Puntos: 1
Re: problema al chequear el formato para upload

agregando el mensaje me quedo asi:


$nombre_corto = $HTTP_POST_FILES['up_file']['name'];
$tipo_archivo = $HTTP_POST_FILES['up_file']['type'];
$extension = explode(".",$nombre_corto);
$num = count($extension)-1;
if($extension[$num] == "pdf")
{
move_uploaded_file($HTTP_POST_FILES['up_file']['tmp_name'], realpath('.') . '/' . $nombre_corto);
//echo "archivo subido con exito";
}
else
{
echo "<script>alert (Tipo de archivo incorrecto! Solo se admiten PDF!!')</script>";
}


pero no esta funcionando, de esta forma me esta dejando subir cualquier formato y por lo tanto no muestra el mensaje, que me esta faltando??
gracias!!
  #6 (permalink)  
Antiguo 12/12/2006, 09:50
 
Fecha de Ingreso: enero-2005
Ubicación: Barcelona
Mensajes: 1.473
Antigüedad: 19 años, 3 meses
Puntos: 10
Re: problema al chequear el formato para upload

Pues asi a simple vista no ser q te puede estar pasando.
Código PHP:
$nombre_corto $HTTP_POST_FILES['up_file']['name'];
$tipo_archivo $HTTP_POST_FILES['up_file']['type']; 
$extension explode(".",$nombre_corto);
$num count($extension)-1;
//Prueba esto a ver si te imprime pdf o no....
echo $extension[$num];
if(
$extension[$num] == "pdf")
{
move_uploaded_file($HTTP_POST_FILES['up_file']['tmp_name'], realpath('.') . '/' $nombre_corto);
//echo "archivo subido con exito";
}
else
{
echo 
"<script>alert (Tipo de archivo incorrecto! Solo se admiten PDF!!')</script>"

añade esto: echo $extension[$num]; para saber si te llega bien el tipo de archivo.
saludos
__________________
"Cada hombre es el hijo de su propio trabajo"
Miguel de Cervantes Saavedra
"La experiencia es algo que no consigues hasta justo depués de necesitarla"
Laurence Olivier
  #7 (permalink)  
Antiguo 12/12/2006, 10:06
 
Fecha de Ingreso: junio-2005
Mensajes: 337
Antigüedad: 18 años, 11 meses
Puntos: 1
Re: problema al chequear el formato para upload

al hacer el echo $extension[$num]; me llega cuando saco el javascript del alert, si pongo un echo comun de php, me lo muestra, cuando pongo el alert, directamente me no funciona y no me imprime el $extension. me puede estar faltando algo en el alter?
gracias!!
  #8 (permalink)  
Antiguo 12/12/2006, 10:11
 
Fecha de Ingreso: enero-2005
Ubicación: Barcelona
Mensajes: 1.473
Antigüedad: 19 años, 3 meses
Puntos: 10
Re: problema al chequear el formato para upload

si pones solo esto q te sale?
Código PHP:
$nombre_corto $HTTP_POST_FILES['up_file']['name']; 
$tipo_archivo $HTTP_POST_FILES['up_file']['type'];  
$extension explode(".",$nombre_corto); 
$num count($extension)-1
//Q TE IMPRIME AQUI???
echo $extension[$num]; 
asi nos aseguramos q te llega bien la extension del archivo y asi controlar q parte del if entra...

q es lo q te falla exactamente?
__________________
"Cada hombre es el hijo de su propio trabajo"
Miguel de Cervantes Saavedra
"La experiencia es algo que no consigues hasta justo depués de necesitarla"
Laurence Olivier

Última edición por sergi_climent; 12/12/2006 a las 10:17
  #9 (permalink)  
Antiguo 23/07/2008, 05:09
 
Fecha de Ingreso: julio-2008
Mensajes: 4
Antigüedad: 15 años, 9 meses
Puntos: 0
De acuerdo Respuesta: Re: problema al chequear el formato para upload

Cita:
Iniciado por laulaurys Ver Mensaje
al hacer el echo $extension[$num]; me llega cuando saco el javascript del alert, si pongo un echo comun de php, me lo muestra, cuando pongo el alert, directamente me no funciona y no me imprime el $extension. me puede estar faltando algo en el alter?
gracias!!

Hola, el problema que tienes es que te faltan las comillas en el alert, prueba copiando el siguiente código

Código:
<?php

echo '<script language="javascript">\n function mensaje(resultado){ \n alert(resultado);\n }\n </script>\n'; 

$nombre_corto = $HTTP_POST_FILES['up_file']['name'];
$tipo_archivo = $HTTP_POST_FILES['up_file']['type'];  // Creo que esta de mas
$extension = explode(".",$nombre_corto);
$num = count($extension)-1;
if(strtolower($extension[$num]) == "pdf"){

move_uploaded_file($HTTP_POST_FILES['up_file']['tmp_name'], realpath('.') . '/' . $nombre_corto);

$error =  "archivo subido con exito"; 

}
else
{

$error = 'el formato de archivo no es valido, solo .pdf"';

}
echo '<script language="javascript"> mensaje(\''.$error.'\'); </script>';
?>
Directamente he creado una función para el alert para que puedas usarlo en cualquier momento.

Espero que te sirva,
Saludos,
Daniel
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 07:02.