Código de PHP - Subir un fichero a un servidor mediante FTP

Imágen de perfil

Subir un fichero a un servidor mediante FTPgráfica de visualizaciones


PHP

estrellaestrellaestrellaestrellaestrella(10)
Publicado el 02 de Septiembre del 2009 por Xavi
17.715 visualizaciones desde el 02 de Septiembre del 2009. Una media de 49 por semana
Código que muestra como subir un fichero mediante formulario a nuestro servidor, y luego desde nuestro servidor enviar-lo a un servidor FTP.

Versión 1
estrellaestrellaestrellaestrellaestrella(10)

Publicado el 02 de Septiembre del 2009gráfica de visualizaciones de la versión: Versión 1
17.716 visualizaciones desde el 02 de Septiembre del 2009. Una media de 49 por semana
estrellaestrellaestrellaestrellaestrella
estrellaestrellaestrellaestrella
estrellaestrellaestrella
estrellaestrella
estrella

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
<?php
##### http://www.lawebdelprogramador.com #####
 
# Comprovamos que se haya enviado algo desde el formulario
if(is_uploaded_file($_FILES["archivo"]["tmp_name"]))
{
	# Definimos las variables
	$host="192.168.0.100";
	$port=21;
	$user="username";
	$password="password";
	$ruta="carpeta";
 
	# Realizamos la conexion con el servidor
	$conn_id=@ftp_connect($host,$port);
	if($conn_id)
	{
		# Realizamos el login con nuestro usuario y contraseña
		if(@ftp_login($conn_id,$user,$password))
		{
			# Canviamos al directorio especificado
			if(@ftp_chdir($conn_id,$ruta))
			{
				# Subimos el fichero
				if(@ftp_put($conn_id,$_FILES["archivo"]["name"],$_FILES["archivo"]["tmp_name"],FTP_BINARY))
					echo "Fichero subido correctamente";
				else
					echo "No ha sido posible subir el fichero";
			}else
				echo "No existe el directorio especificado";
		}else
			echo "El usuario o la contraseña son incorrectos";
		# Cerramos la conexion ftp
		ftp_close($conn_id);
	}else
		echo "No ha sido posible conectar con el servidor";
}else{
   echo "Selecciona un archivo...";
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<head>
	<title>Subir ficheros al servidor mediante FTP</title>
</head>
<body>
	<form method="post" enctype="multipart/form-data" action="<?php echo $_SERVER["HTTP_SELF"]?>">
		<div>Fichero: <input type="file" name="archivo" id="image" maxlength="45"></div>
		<dif><input type="submit" name="enviar" value="enviar"/></div>
	</form>
</body>
</html>



Comentarios sobre la versión: Versión 1 (10)

KIKO
29 de Marzo del 2012
estrellaestrellaestrellaestrellaestrella
Me gustaria Saber Como poner a este codigo la extension de archivo que quiero subir porque solo quiero subir una extension .bsp como puedo hacer?
Responder
lexx
01 de Octubre del 2013
estrellaestrellaestrellaestrellaestrella
hola mira estoy tratando de utilizar tu codigo para lo que es pero simplemente no me funciona cambie las variables por mis datos de acceso ftp y lo subi a mi host y no simplemente no me sirve hice algo mal o que puedo hacer lo necesito gracias
Responder
Simon
16 de Mayo del 2014
estrellaestrellaestrellaestrellaestrella
Muuuchas gracias a mi no me funcionaba el codigo que habia , hecho pero con este va bien, gracias funciona perfecto.
Responder
Zacarias
15 de Agosto del 2014
estrellaestrellaestrellaestrellaestrella
Hola, me pasa lo mismo que a lexx, alguien puede responder por favor?. gracias.

Lexx, pudiste arreglarlo?
Responder
Luis
28 de Abril del 2015
estrellaestrellaestrellaestrellaestrella
Maravilloso , muchas gracias
Responder
cristian
15 de Agosto del 2015
estrellaestrellaestrellaestrellaestrella
si funciona yo lo probe
Responder
cristian
15 de Agosto del 2015
estrellaestrellaestrellaestrellaestrella
hay un error y lo corregi
era este $ruta="carpeta";
corregido
$ruta=""; la ruta dejalo vacio para que funcione
Responder
Marian
09 de Marzo del 2016
estrellaestrellaestrellaestrellaestrella
Si funciona, gracias, y como hago que se dirija a una carpeta especifica?
Responder
carlos
04 de Noviembre del 2016
estrellaestrellaestrellaestrellaestrella
El problema de la carpeta es saber definir el directorio raíz, y a partir de ahí el resto de las carpetas. Sería necesario que desde el hosting te den cual es tu directorio raíz..., por ejemplo "/webspace/httpdocs/tusitio/tudirectorior/"
Debe de haber barra al principio y al final. La expresión /webspace/httpdocs/ te la debe de dar tu proveedor. Desde un cliente ftp pulsando con el botón invertido sobre un archivo lo puedes también deducir.
Me ha funcionado correctamente, teniendo en cuenta estas consideraciones
Responder
fran
16 de Noviembre del 2016
estrellaestrellaestrellaestrellaestrella
esto me funciona si la aplicacion la tengo alojada en un alojamiento web pero hay alguna manera que me funcione directamente por local que no haga falta tenerla subida a un alojamiento?
Responder

Comentar la versión: Versión 1

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios

http://lwp-l.com/s1844