Foros del Web » Programando para Internet » PHP »

Scrip Upload PHP

Estas en el tema de Scrip Upload PHP en el foro de PHP en Foros del Web. Bueno les quiero contar que tengo un problema con el siguiente script: Código PHP: <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <title>sucess</title> <meta name="generator" content="Created by Jeremy Irwin"> </head> <body bgcolor="#000000" text="#000000"> <img src="imagen/listo.gif" alt="" name="Image1" width="397" height="201" border="0" align="top" id="Imagen1" style="position:absolute;left:330;top:95px;width:397px;height:201px;z-index:0"> <div id="wb_Html1" style="position:absolute;left:361px;top:162px;width:337px;height:112px;z-index:1" align="left"> <!-- Upload Class --> <?php  ...
  #1 (permalink)  
Antiguo 05/01/2009, 20:33
 
Fecha de Ingreso: julio-2007
Mensajes: 14
Antigüedad: 16 años, 9 meses
Puntos: 0
Scrip Upload PHP

Bueno les quiero contar que tengo un problema con el siguiente script:

Código PHP:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>sucess</title>
<meta name="generator" content="Created by Jeremy Irwin">
</head>
<body bgcolor="#000000" text="#000000">
<img src="imagen/listo.gif" alt="" name="Image1" width="397" height="201" border="0" align="top" id="Imagen1" style="position:absolute;left:330;top:95px;width:397px;height:201px;z-index:0">
<div id="wb_Html1" style="position:absolute;left:361px;top:162px;width:337px;height:112px;z-index:1" align="left">
<!-- Upload Class -->
<?php 
$extensiones
=array("html","exe","php");

$path="C:\AppServ\www\upload2\archivos_subidos";
$nombre=$HTTP_POST_FILES['archivo']['name'];
$tamanio=$HTTP_POST_FILES['archivo']['size'];
$tipo=$HTTP_POST_FILES['archivo']['type'];
$var explode(".","$nombre");
$num count($extensiones);
$valor $num-1;
for(
$i=0$i<=$valor$i++) {
    if(
$extensiones[$i] == $var[1]) {
    echo 
"Tipo de Archivo no admitido";
    exit;
    }
}
if (
is_uploaded_file($HTTP_POST_FILES['archivo']['tmp_name']))
 {
  
copy($HTTP_POST_FILES['archivo']['tmp_name'], "$path/$nombre");
  echo 
"El archivo se ha subido correctamente al servidor, muchas gracias <p>";
  echo 
"<strong>Nombre<strong>: $nombre <p>";
  echo 
"Tamaño: $tamanio <p>";
  echo 
"Tipo: $tipo";
 }

else { echo 
"Error al subir el archivo"; }

?></div>
</body>
</html>
Cuando trato de subiru n archivo con mas de 2MB me tira el error de "Error al subir el archivo", pero cuando subo un archivo de 500kbs .. lo sube pefectamente :/
  #2 (permalink)  
Antiguo 05/01/2009, 20:56
Avatar de srsombrero  
Fecha de Ingreso: marzo-2008
Mensajes: 128
Antigüedad: 16 años, 1 mes
Puntos: 0
Respuesta: Scrip Upload PHP

Tu problema esta en el php.ini, en la configuracion del WebServer.
Te paso a comentar:

Hay dos lineas:

upload_max_file_size: (Por defecto es de 2M) habria que cambiar esta por tamaño mayor a 2 MB

post_max_file_size: (Por defecto 2M), es el tamaño maximo que va a aceptar el metodo POST en los archivos. Es decir, lo que se almacene en el array POST de PHPen archivos puede ser de maximo 2M, habria que setearlo en un valor mayor y listo.

Mucha suerte.

Agur.
  #3 (permalink)  
Antiguo 05/01/2009, 22:30
Avatar de MoDoRrO  
Fecha de Ingreso: septiembre-2005
Ubicación: Php+Flash+AS
Mensajes: 1.072
Antigüedad: 18 años, 7 meses
Puntos: 12
Respuesta: Scrip Upload PHP

asi es, busca el archivo php.ini y abrelo con block d notas, busca esas lineas, y ponle un valor mayor, digamos unos 50, que equivale a 50mb

ademas, si abres el archivo, encontraras muchisimas cosas mas de la configuracion de tu php

saludos
  #4 (permalink)  
Antiguo 05/01/2009, 23:03
 
Fecha de Ingreso: julio-2007
Mensajes: 14
Antigüedad: 16 años, 9 meses
Puntos: 0
Respuesta: Scrip Upload PHP

muchas gracias a los 2!, ahora si :D!

Otra cosa no hay algun script para que ponga tipo circulos con opciones para cada archivo, nose como .Jpeg .Avi .Gif, asi y q las guarde en cada carpeta.. :D


_________________[EXAMINAR]-[UPLOAD!]

o-JPEG o-AVI x-.GIF

aca esta el html:

Código HTML:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Uploader</title>
</head>
<body bgcolor="#000000" text="#000000">
<img src="imagen/fondo.gif" alt="" name="Image1" width="400" height="200" border="0" align="top" id="Image1" style="position:absolute;left:438px;top:281px;width:400px;height:200px;z-index:2">
<div id="wb_Form1" style="position:absolute;left:443px;top:289px;width:389px;height:183px;z-index:3" align="left">
<form method="POST" enctype="multipart/form-data" action="uploaddemo.php">
<input type="file" name="archivo" size="25" style="position:absolute;left:71px;top:77;width:307px;height:24px;z-index:0">
<input type="image" value="Enviar" name="send"  id="Boton1" src="imagen/subir.jpg" style="position:absolute;left:98px;top:112px;width:86px;height:34px;z-index:1">
</form>
</div>
</body>
</html> 

Última edición por franfk; 05/01/2009 a las 23:20
  #5 (permalink)  
Antiguo 06/01/2009, 10:18
Avatar de MoDoRrO  
Fecha de Ingreso: septiembre-2005
Ubicación: Php+Flash+AS
Mensajes: 1.072
Antigüedad: 18 años, 7 meses
Puntos: 12
Respuesta: Scrip Upload PHP

disculpa, no te entendi muy bien, pero creo que te refieres a que el boton Examinar solo reconozca archivos conn extencion .jpg .gif .png .jpeg etc

????
  #6 (permalink)  
Antiguo 06/01/2009, 17:54
 
Fecha de Ingreso: julio-2007
Mensajes: 14
Antigüedad: 16 años, 9 meses
Puntos: 0
Respuesta: Scrip Upload PHP

Cita:
Iniciado por MoDoRrO Ver Mensaje
disculpa, no te entendi muy bien, pero creo que te refieres a que el boton Examinar solo reconozca archivos conn extencion .jpg .gif .png .jpeg etc

????

nono, osea que allan opciones para que te lo deje en una carpeta distinta.. que ellos pongan que archivo es y se uplodee en esa carpeta especifica.



Carpeta: Videos
Carpeta: Imagenes
Carpeta: Rar
  #7 (permalink)  
Antiguo 06/01/2009, 19:55
Avatar de srsombrero  
Fecha de Ingreso: marzo-2008
Mensajes: 128
Antigüedad: 16 años, 1 mes
Puntos: 0
Respuesta: Scrip Upload PHP

De lo que estas hablando es de un radio button.
En todo caso no hace falta...

Te muestro un ejemplo

Código PHP:

if (is_uploaded_file($HTTP_POST_FILES['archivo']['tmp_name']))
 {
    if (
strtolower($var[1]) == "jpeg")
    {
      
copy($HTTP_POST_FILES['archivo']['tmp_name'], "RUTA DE LOS JPG/$nombre");
      echo 
"El archivo se ha subido correctamente al servidor, muchas gracias <p>";
      echo 
"<strong>Nombre<strong>: $nombre <p>";
      echo 
"Tamaño: $tamanio <p>";
      echo 
"Tipo: $tipo";
       }

  if (
strtolower($var[1]) == "avi")
    {
      
copy($HTTP_POST_FILES['archivo']['tmp_name'], "RUTA DE LOS JPG/$nombre");
      echo 
"El archivo se ha subido correctamente al servidor, muchas gracias <p>";
      echo 
"<strong>Nombre<strong>: $nombre <p>";
      echo 
"Tamaño: $tamanio <p>";
      echo 
"Tipo: $tipo";
       }
     .
     .
     .................
    
Y seguis
 

Si queres podes hacer un switch tambien, me parece lo mas conveniente...
Saludos
  #8 (permalink)  
Antiguo 06/01/2009, 20:09
 
Fecha de Ingreso: julio-2007
Mensajes: 14
Antigüedad: 16 años, 9 meses
Puntos: 0
Respuesta: Scrip Upload PHP

Cita:
Iniciado por srsombrero Ver Mensaje
De lo que estas hablando es de un radio button.
En todo caso no hace falta...

Te muestro un ejemplo

Código PHP:

if (is_uploaded_file($HTTP_POST_FILES['archivo']['tmp_name']))
 {
    if (
strtolower($var[1]) == "jpeg")
    {
      
copy($HTTP_POST_FILES['archivo']['tmp_name'], "RUTA DE LOS JPG/$nombre");
      echo 
"El archivo se ha subido correctamente al servidor, muchas gracias <p>";
      echo 
"<strong>Nombre<strong>: $nombre <p>";
      echo 
"Tamaño: $tamanio <p>";
      echo 
"Tipo: $tipo";
       }

  if (
strtolower($var[1]) == "avi")
    {
      
copy($HTTP_POST_FILES['archivo']['tmp_name'], "RUTA DE LOS JPG/$nombre");
      echo 
"El archivo se ha subido correctamente al servidor, muchas gracias <p>";
      echo 
"<strong>Nombre<strong>: $nombre <p>";
      echo 
"Tamaño: $tamanio <p>";
      echo 
"Tipo: $tipo";
       }
     .
     .
     .................
    
Y seguis
 

Si queres podes hacer un switch tambien, me parece lo mas conveniente...
Saludos

claro, pero necesito que sean botones que ellos los toquen para especificar el tipo de archivo
  #9 (permalink)  
Antiguo 06/01/2009, 22:08
Avatar de MoDoRrO  
Fecha de Ingreso: septiembre-2005
Ubicación: Php+Flash+AS
Mensajes: 1.072
Antigüedad: 18 años, 7 meses
Puntos: 12
Respuesta: Scrip Upload PHP

pues, como te dijeron, usa radio button's

y los recibes con $_POST segun el caso, los envias alas carpetas correspondientes
  #10 (permalink)  
Antiguo 06/01/2009, 23:57
 
Fecha de Ingreso: julio-2007
Mensajes: 14
Antigüedad: 16 años, 9 meses
Puntos: 0
Respuesta: Scrip Upload PHP

Si ya pude poner los radio buttons, pero no me toma las direcciones :S!, me la sube siempre a la misma direccion :S!
  #11 (permalink)  
Antiguo 07/01/2009, 17:33
Avatar de MoDoRrO  
Fecha de Ingreso: septiembre-2005
Ubicación: Php+Flash+AS
Mensajes: 1.072
Antigüedad: 18 años, 7 meses
Puntos: 12
Respuesta: Scrip Upload PHP

pon el codigo aqui
  #12 (permalink)  
Antiguo 07/01/2009, 20:05
 
Fecha de Ingreso: julio-2007
Mensajes: 14
Antigüedad: 16 años, 9 meses
Puntos: 0
Respuesta: Scrip Upload PHP

Código PHP:
<div class="reglas">
<form action="<?php echo $PHP_SELF;?>" method="post" enctype="multipart/form-data">
<p>
<p>Seleccionar demo: 
  <input type="file" name="archivo" size="25" /> 
  <br />
<p>
  <input type="radio" value="Longjump" name="Kzmap" />Map Record <input type="radio" value="Longjump" name="lj" />LongJump <input type="radio" value="Longjump" name="Surfmap" />Surf Record
  <input type="submit" value="Enviar Demo" name="send" style="margin-left:140px; margin-top: 10px;" />
<p><span class="Estilo5">
<?php 
$extensiones
=array("html","exe","php","gif","txt","jpeg","png","dat");

$path="/home/nvargnet/public_html/demoskz";
$nombre=$HTTP_POST_FILES['archivo']['name'];
$tamanio=$HTTP_POST_FILES['archivo']['size'];
$tipo=$HTTP_POST_FILES['archivo']['type'];
$var explode(".","$nombre");
$num count($extensiones);
$valor $num-1;
for(
$i=0$i<=$valor$i++) {
    if(
$extensiones[$i] == $var[1]) {
    echo 
"Tipo de Archivo no admitido";
    exit;
    }
}
if (
is_uploaded_file($HTTP_POST_FILES['archivo']['tmp_name']))
 {
  
copy($HTTP_POST_FILES['archivo']['tmp_name'], "$path/$nombre");


  echo 
"La demo se ha subido correctamente al servidor, muchas gracias<p>";

 }
 if (
strtolower($var[1]) == "Kzmap")
    {
      
copy($HTTP_POST_FILES['archivo']['tmp_name'], "/home/nvargnet/public_html/demoskz/kzmap/$nombre");
      echo 
"El archivo se ha subido correctamente al servidor, muchas gracias <p>";
       } 
       
 if (
strtolower($var[1]) == "Lj")
    {
      
copy($HTTP_POST_FILES['archivo']['tmp_name'], "/home/nvargnet/public_html/demoskz/lj/$nombre");
      echo 
"El archivo se ha subido correctamente al servidor, muchas gracias <p>";
       } 
 if (
strtolower($var[1]) == "Surfmap")
    {
      
copy($HTTP_POST_FILES['archivo']['tmp_name'], "/home/nvargnet/public_html/demoskz/surfmap/$nombre");
      echo 
"El archivo se ha subido correctamente al servidor, muchas gracias <p>";
       } 

?>
</span>
</form>
  #13 (permalink)  
Antiguo 08/01/2009, 14:20
 
Fecha de Ingreso: julio-2007
Mensajes: 14
Antigüedad: 16 años, 9 meses
Puntos: 0
Respuesta: Scrip Upload PHP

porfavor ayudenme :(
  #14 (permalink)  
Antiguo 08/01/2009, 14:55
Avatar de argy  
Fecha de Ingreso: octubre-2007
Ubicación: Longitud 75º Latitud 18º Sur
Mensajes: 614
Antigüedad: 16 años, 6 meses
Puntos: 18
Respuesta: Scrip Upload PHP

creo que estás cometiendo muchos errores.

tus rediobuttons deben tener el mismo name(ej name="opciones") y los values son los que deben cambiar(ej. value="dir1", value="dir2=",...), cuantas opciones tengas, luego por post recibes todos los campos, en este caso el radio será $_POST["opciones"].

luego tendrás el root de tu aplicación algo asi /home/mi_web/html_public/., esto lo obtienes también con $_SERVER["DOCUMENT_ROOT"], luego si tienes un directorio de UPLOADS tendrás que concatenar al root anteriormente mencionado, ahora que ya tienes el path de tus imágenes como el que se puede mostrar /home/mi_web/html_public/uploads/, concatenarás la variable $_POST["opciones"] que es la opción(directorio en este caso) que seleccionará el usuario para subir su archivo(ej. /home/mi_web/html_public/uploads/.$_POST["opciones"], quedando este como el path final donde se subirá la imágen entonces sería así
$path_final_donde_subir_imagen="/home/mi_web/html_public/uploads/"._$_POST["imagen"]
luego de hacer todas las comprobaciones utilizas el copy(aunque yo siempre utilizo move_upload), y depués compruebas con is_uploaded_file si se ha subido el archivo.

suerte
__________________
Software libre para un mundo libre.

Eventualmente en el foro.
  #15 (permalink)  
Antiguo 08/01/2009, 15:12
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Respuesta: Scrip Upload PHP

Hola:

El tema de las extensiones puede que debas estudiarlo un poco más. Creo que es mejor averiguar el tipo con getimagesize y image_type_to_mime_type... Puede haber casos que se cambie la extensión o sea otro tipo de archivos o no suba bien...

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
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 02:05.