InicioHazlo Tu MismoCrear un sistema de ftp
Crear un sistema de ftp



Cree un sistema de ftp básico, solo para dar una idea de cómo se hace.

Tiene:
* Visor de archivos en el servidor.
* Subir archivo
* Eliminar archivo
* Crear directorio
No esta ordenado. Si lo ordenan a las opciones mas y le ponen color va a quedar de 10.
Código:

Index.php

<?php 
if($_POST){ 
session_start(); 
session_register(); 
$_SESSION['us_ftp']=$_POST['us_ftp']; 
$_SESSION['cl_ftp']=$_POST['cl_ftp']; 
$_SESSION['sr_ftp']=$_POST['sr_ftp']; 
$_SESSION['pr_ftp']=$_POST['pr_ftp']; 
header("location: ftp_conection.php");  

?> 
<fieldset><legend>Conexion a servidor via FTP</legend><form action="" method="post" name="cx_ftp" id="cx_ftp"> 
  <strong>Usuario:</strong><br> 
  <input name="us_ftp" type="text" id="us_ftp"> 
  <br> 
  <strong>Clave:</strong><br> 
  <input name="cl_ftp" type="password" id="cl_ftp"> 
  <br> 
  <strong>Servidor:</strong><br> 
  <input name="sr_ftp" type="text" id="sr_ftp"> 
  <br> 
  <strong>Puerto:</strong><br> 
  <input name="pr_ftp" type="text" id="pr_ftp"> 
  <br> 
  <input name="ev_ftp" type="submit" id="ev_ftp" value="Entrar"> 
  <input name="rs_ftp" type="reset" id="rs_ftp" value="Borrar datos"> 
</form> 
</fieldset>



ftp_conection.php


 <?php 
session_start
(); 
////////////////////// 
$usuario=$_SESSION['us_ftp']; 
$clave=$_SESSION['cl_ftp']; 
$servidor=$_SESSION['sr_ftp']; 
$puerto=($_SESSION['pr_ftp']=="")? 21 $_SESSION['pr_ftp']; 
$ftp=@ftp_connect($servidor,$puerto,600); 
$conec=@ftp_login ($ftp$usuario$clave); 
if(!
$ftp
die(
"No se pudo conectar al servidor."); 
elseif(!
$conec
die(
"Conexion rechasada."); 
echo 
'<script> 
var sin_selec="#FFFFFF"; 
var con_selec="#E4E4E4"; 
function marcar(obj) { 
elem=obj.parentNode.parentNode; 
elem.style.backgroundColor=(obj.checked) ? con_selec : sin_selec; 


function marcarTodos(obj) { 
elem=document.getElementsByName("select[]"); 
for(i=0;i<elem.length;i++) { 
elem[i].checked=obj.checked; 
fila=elem[i].parentNode.parentNode; 
fila.style.backgroundColor=(obj.checked) ? con_selec : sin_selec; 


</script> 
'
// Escibimos una funcion javascript 
//////////////////// 
if(!isset($_GET['c'])) 
$dir_pr=ftp_pwd($ftp); 
else 
$dir_pr=$_GET['c']; 
//////////////////// 
if($_POST && $_POST['v']=="e"){ 
foreach(
$_POST['select'] as $es_val){// Abrimos el foreach 
$ar=@ftp_delete($ftp,$es_val); 
if(
$ar// Si no es carpeta 
echo "Se a eliminado correctamente.<br>"
else
// De lo contrario 
echo "No se pudo eliminar.<br>"
// Cerramos el foreach 

if(
$_POST && $_POST['v']=="c"){ 
$dir=$dir_pr.$_POST['dir']; 
if (@
ftp_mkdir($ftp$dir)) { 
 echo 
"Se a creado "$dir" con exiton"
} else { 
 echo 
"Hubo un problema al crear $dirn"


if(
$_POST && $_POST['v']=="s"){      
$local_file $dir_pr.$_FILES['txt_file']['tmp_name']; 
$destination_file $dir_pr.basename($_FILES['txt_file']['name']);  
$upload ftp_put($ftp$destination_file$local_fileFTP_BINARY);   
if(
$upload
echo 
"Se a subido correctamente."
else 
echo 
"No se pudo subir correctamente."

if(
$_POST && $_POST['v']=="sa"){      
session_unset();  
session_destroy();  
echo 
"Chau"


/////////////////// 
$pag=array(); 
echo 
"Directorio: ".$dir_pr
if(
$dir_pr!="/"
echo 
"<br><a href='?c=/'>Ir al principio</a>"
echo 
'<form action="" name="selected" method="post"><table width="761" border="0" align="center" cellpadding="2" cellspacing="2">  <tr> 
    <td width="445" height="19" bgcolor="#999999"><strong>Archivo o directorio </strong></td> 
    <td width="276" bgcolor="#999999"><strong>Tama&ntilde;o</strong></td> 
    <td width="20" bgcolor="#999999"><input type="checkbox" onClick="marcarTodos(this)" name="todos"/></td> 
  </tr> 
'

$contenidos ftp_nlist($ftp,$dir_pr); 
$i=0
foreach(
$contenidos as $cont){ 
$tamaño=ftp_size($ftp,$dir_pr.$cont); 
if(
$tamaño==-&& $cont!="." && $cont!=".."
$pag[]="<tr> 
    <td><a href='?c="
.$dir_pr.$cont."/'>$cont</a></td> 
    <td >-</td> 
    <td >-</td> 
  </tr> 
"

elseif(
$cont!="." && $cont!=".."
$pag[]="<tr> 
    <td>
$cont</td> 
    <td >
$tamaño bytes</td> 
    <td > <input type='checkbox' onClick='marcar(this)' name='select[]' value='"
.$dir_pr.$cont."' /> </td> 
  </tr> 
"

$i=$i+$tamaño

echo 
implode('',$pag); 
echo 
'</table><input name="eliminar" type="submit" value="Eliminar selecionados"><input name="v" type="hidden" value="e"></form>'
echo 
'<form action="" name="selected" method="post"><input name="v" type="hidden" value="c">Crear directorio nuevo:<br><input name="dir" type="text"><input name="crear" type="submit" value="Crear nuevo directorio"></form>'
echo 
'        <form action="" method="POST" enctype="multipart/form-data"> 
                <input name="v" type="hidden" value="s"> 
            Subir archivo: <input name="txt_file" type="file" size="35" /> 
            <input type="submit" name="subir" value="Subir archivo"/> 
        </form>'

echo 
"Tamaño aprox. de todos los archivos: ".$i." bytes"
echo 
'<form method="post"><input name="v" type="hidden" value="sa"><input name="salir" value="Salir" type="submit"></form>'
ftp_close($ftp); 
?>


saludos y espero que os sirva .
Datos archivados del Taringa! original
28puntos
803visitas
0comentarios
Actividad nueva en Posteamelo
0puntos
1visitas
0comentarios
Dar puntos:

Dejá tu comentario

0/2000

Autor del Post

a
adrivk096🇦🇷
Usuario
Puntos0
Posts6
Ver perfil →
PosteameloArchivo Histórico de Taringa! (2004-2017). Preservando la inteligencia colectiva de la internet hispanohablante.

CONTACTO

18 de Septiembre 455, Casilla 52

Chillán, Región de Ñuble, Chile

Solo correo postal

© 2026 Posteamelo.com. No afiliado con Taringa! ni sus sucesores.

Contenido preservado con fines históricos y culturales.