Foros del Web » Programando para Internet » PHP »

subir imagenes 1mb al servidor

Estas en el tema de subir imagenes 1mb al servidor en el foro de PHP en Foros del Web. Amigos, tengo un proyecto bastante interesante. Trata de subir imagenes al servidor para luego venderlas . Las imagenes pesan al rededor de 1 a 3 ...
  #1 (permalink)  
Antiguo 25/08/2006, 13:46
 
Fecha de Ingreso: noviembre-2003
Ubicación: mar del plata
Mensajes: 107
Antigüedad: 14 años
Puntos: 0
subir imagenes 1mb al servidor

Amigos, tengo un proyecto bastante interesante. Trata de subir imagenes al servidor para luego venderlas . Las imagenes pesan al rededor de 1 a 3 mb porque tienen una gran resolución .

Que alternativas tengo para hacerlo ? . Yo la unica que conozco es la "subida clásica" mediante PHP pero se que demora mucho y no creo que sea conveniente usarla cuando son archivos tan grandes. Vi por internet en una página amiga de foros del web; CRISTALAB el siguiente codigo :

Código PHP:
<?php    
// Primero creamos un ID de conexión a nuestro servidor    
$cid ftp_connect("www.cg.edu.mx");
// Luego creamos un login al mismo con nuestro usuario y contraseña$resultado = ftp_login($cid, "usuario","noteladigo");    
// Comprobamos que se creo el Id de conexión y se pudo hacer el login    if ((!$cid) || (!$resultado)) {        
              
echo "Fallo en la conexión"; die;
             } else {        
              echo 
"Conectado.";    
             }    
// Cambiamos a modo pasivo, esto es importante porque, de esta manera le decimos al     
//servidor que seremos nosotros quienes comenzaremos la transmisión de datos.    

ftp_pasv ($cidtrue) ;    
echo 
"<br> Cambio a modo pasivo<br />";    

// Nos cambiamos al directorio, donde queremos subir los archivos, si se van a subir a la raíz    
// esta por demás decir que este paso no es necesario. En mi caso uso un directorio llamado boca    

ftp_chdir($cid"boca");    
echo 
"Cambiado al directorio necesario";       

// Tomamos el nombre del archivo a transmitir, pero en lugar de usar $_POST, usamos $_FILES que le indica a PHP    

// Que estamos transmitiendo un archivo, esto es en realidad un matriz, el segundo argumento de la matriz, indica
// el nombre del archivo    
$local $_FILES["archivo"]["name"];    

// Este es el nombre temporal del archivo mientras dura la transmisión$remoto = $_FILES["archivo"]["tmp_name"];    // El tamaño del archivo    
$tama $_FILES["archivo"]["size"];    
echo 
"<br />$local<br />";    
echo 
"$remoto<br />";    
echo 
"subiendo el archivo...<br />";    
// Juntamos la ruta del servidor con el nombre real del archivo    
$ruta "/srv/www/htdocs/boca/" $local;    
// Verificamos si no hemos excedido el tamaño del archivo    

if (!$tama<=$_POST["MAX_FILE_SIZE"]){        
echo 
"Excede el tamaño del archivo...<br />";    
} else {        
// Verificamos si ya se subio el archivo temporal        
if (is_uploaded_file($remoto)){            
// copiamos el archivo temporal, del directorio de temporales de nuestro servidor a la ruta que creamos            
copy($remoto$ruta);                
}        
// Sino se pudo subir el temporal        
else {            
echo 
"no se pudo subir el archivo " $local;        
}
}    
echo 
"Ruta: " $ruta;    
//cerramos la conexión FTP    
ftp_close($cid);
?>
pero también vi que puede usarse el control ACTIVE X para hacerlo . Alguien me puede aconsejar ? .
Si tienen scripts o active x gratuitos para poder resolver este caso se los agradeceria.
__________________
Ale
  #2 (permalink)  
Antiguo 25/08/2006, 14:08
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
El código que muestras .. igual el proceso, limitaciones y problemas de control del archivo que subes lo tienes igualmente (pasa por PHP) es decir, se hace un "upload HTTP" (en el momento que usas $_FILES) aunque luego usa funciones de FTP para "mover" el archivo subido a su destino definitivo (sea ese mismo servidor u otro servidor que tenga acceso FTP y cuenta conocida en el ..).

El tema de los "ActiveX" deberías consultarlo en el foro de "Programación" o de (x)HTML .. Ten presente (o que te expliquen por allá) los detalles de usar un activeX .. que sí, presta más opciones: subir directorios completos, validaciones .. barras de progreso del "upload" .. etc Pero requiere de confirmación e instalación en el cliente (en el navegador que lo use). También tienes opciones como "Applet Java" ..

PHP llega hasta aquí .. suerte.

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #3 (permalink)  
Antiguo 25/08/2006, 14:15
 
Fecha de Ingreso: noviembre-2003
Ubicación: mar del plata
Mensajes: 107
Antigüedad: 14 años
Puntos: 0
En tu experiencia como programador (que por cierto es mucha ya que sos conocido en el foro) que es lo que recomendarias ? para brindar un buen servicio al usuario del sistema ? un Applet JAVA? , un active X ? o usar un http upload mediante PHP ? .

Yo pensé en usar 2 . El básico HTTPUpload e incluir una mini aplicación como un applet como vos decis u otro pero ACTIVE X . En el contexto de archivos grandes por supuesto .

bueno muchas gracias.
__________________
Ale
  #4 (permalink)  
Antiguo 25/08/2006, 14:44
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Cita:
Iniciado por ale21ale Ver Mensaje
En tu experiencia como programador (que por cierto es mucha ya que sos conocido en el foro) que es lo que recomendarias ? para brindar un buen servicio al usuario del sistema ? un Applet JAVA? , un active X ? o usar un http upload mediante PHP ? .

Yo pensé en usar 2 . El básico HTTPUpload e incluir una mini aplicación como un applet como vos decis u otro pero ACTIVE X . En el contexto de archivos grandes por supuesto .

bueno muchas gracias.
(yo no he diseñado sistemas en base a ActiveX o Applet java).

Te doy mi opinión más que como programador como usuario de esos posibles sistemas ..

El uso del ActiveX o equivalente ya prestará de por sí otras funcionalidades (como las que te mencioné de subir directorios enteros .. etc) así que si vas a realizar una "inversión" en adquierir cierto ActiveX, o incluso llegar a programarlo tu (o alquien de tu equípo o a quien le mandes el trabajo) .. en ese lugar usa un sólo "interface" para tu sistema y no "marees" al usuario final con várias interfaces o que le tengas que indicar "si su archivo está en tal rango de bytes .. use este sistema si es superior .. el otro".

No sé que opinas .. pero esa es mi opinión al respecto.

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
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 21:10.