Foros del Web » Programando para Internet » PHP »

Subir archivos por ftp

Estas en el tema de Subir archivos por ftp en el foro de PHP en Foros del Web. Hola, necesito subir archivos por ftp al servidor y lo logro hacer si el tamaño del archivo es menor de 5KB . ¿Esto es una ...
  #1 (permalink)  
Antiguo 01/03/2006, 11:05
 
Fecha de Ingreso: agosto-2005
Mensajes: 40
Antigüedad: 18 años, 7 meses
Puntos: 0
Pregunta Subir archivos por ftp

Hola,

necesito subir archivos por ftp al servidor y lo logro hacer si el tamaño del archivo es menor de 5KB .

¿Esto es una limitación del servidor o es una limitación de php?
¿Se puede hacer algo para poder subir archivos más grandes?

Gracias.
  #2 (permalink)  
Antiguo 01/03/2006, 11:48
Avatar de carlosfocus  
Fecha de Ingreso: enero-2006
Ubicación: Venezuela
Mensajes: 823
Antigüedad: 18 años, 2 meses
Puntos: 0
Verifica el Upload que esta en el server o si tienes algun parametro de restriccion en tucode, o copia el code aki para verlo
__________________
Carlos Herrera
Web Developer
www.carlos.com.ve
Para descargar archivos propios a su Teléfono Mobil? www.carlosfocus.com
  #3 (permalink)  
Antiguo 02/03/2006, 02:15
 
Fecha de Ingreso: agosto-2005
Mensajes: 40
Antigüedad: 18 años, 7 meses
Puntos: 0
Hola,

gracias por intentar ayudarme. El código que tengo es el siguiente:

formulario.html

Código:
<form name="enviador" method="post" action="recibe.php" enctype="multipart/form-data">
Archivo: <input type="file" name="archivo">
<input type="submit">

recibe.php

Código:
<?php
	//Primero creamos un ID de conexión a nuestro servidor
	$cid=ftp_connect("host");
	//Luegos creamos un login al mismo con nuestro usuario y contraseña
	$resultado=ftp_login($cid,"usuario","contaseña");
	//Comprobamos que se creo el Id de conexión y se pudo hacer 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 los que comenzaremos la transmisión de datos
	ftp_pasv($cid,true);
	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 está por más decir que este paso no es necesario. En mi caso uso 
	//un directorio llamado ftp
//	ftp_chdir($cid,"ftp");
//	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 una 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"];
	echo "remoto<br/>";
	echo "subiendo el archivo...<br/>";
	//Juntamos la ruta del servidor con el nombre real del archivo
//	$ruta="/src/www/htdocs/ftp/".$local;
	$ruta="/home/www/desarrollos.freefronthost.com/ftp/".$local;
	//Verificamos si ya se subió 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);
	else
		//Si no se pudo subir el temporal
		echo "no se pudo subir el archivo ".$local;
	echo "Ruta: ".$ruta;
	//Cerramos la conexión FTP
	ftp_close($cid);
?>

Saludos
  #4 (permalink)  
Antiguo 02/03/2006, 02:47
Avatar de BestKorn  
Fecha de Ingreso: octubre-2004
Ubicación: México
Mensajes: 133
Antigüedad: 19 años, 5 meses
Puntos: 0
Re:

Algunas veces la limitante no es del FTP ni de tus programas de PHP si no del servidor en donde hospedas tus archivos.
Por ejemplo Brinkster no deja usar servicio de FTP en sus cuentas gratuitas pero si en las cuentas Premium.

En las cuentas gratuitas puedes subir maximo 5 archivos a la vez... y no pueden sobrepasar un cierto tamaño.
A eso me refiero.
  #5 (permalink)  
Antiguo 02/03/2006, 06:36
 
Fecha de Ingreso: agosto-2005
Mensajes: 40
Antigüedad: 18 años, 7 meses
Puntos: 0
Hola,

yo dónde estoy hospedado me permite subir varios archivos a la vez y probé con uno de más de un mega y lo subió sin problemas.

Gracias.
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 09:13.