Na matéria de hoje falaremos um pouco sobre um assunto bastante comentado na Internet, porém, que possui poucos exemplos simples (em sua grande maioria são com erros).
Quem trabalha com Internet, sabe que o envio rápido e prático de arquivos é essencial. correto?
Já pensou em enviar um ficheiro para seu Servidor de forma rápida e por um motivo ou outro, esquece o login, senha ou até mesmo o IP do Servidor em um outro lugar?
Com uma solução prática, você pode facilmente enviar ou receber seu conteúdo!
Se você Vasculhar os recursos do CPanel, encontrará um sisteminha prático que faz isso pra você (o file manager), mas se você não tiver os dados de acesso ao Servidor, de nada adianta!
Há a possibilidade também de baixar o file manager e customizá-lo, mas… se for para executar tal procedimento, é mais fácil você desenvolver sua própria solução!
Na matéria de hoje vamos lhe dar algumas dicas de como fazer isso. Claro, não vamos postar o conteúdo completo, mas você terá uma base para elaborar algo mais sofisticado.
Efetuando Conexão FTP
A conexão a um Servidor FTP não é difícil de fazer. Basta você usar a função ftp_connect().
Geralmente usamos classes pré-definidas e limpas. Como nosso foco nesta matéria é auxiliar quem está iniciando, vou disponibilizar abaixo um script básico. ok?
Veja abaixo como faríamos o script de conexão:
Prático, não?
O que acha de verificar na prática o conteúdo?
Listando O Conteúdo Do Diretório
Abaixo disponibilizamos um pequeno exemplo de como você pode listar o conteúdo da sua página.
Antes disso, vamos mostrar como ficaría uma função para tal finalidade:
function listar($modo,$diretorio,$ant,$dps) {
if ($conn_id == "") die("Você deve conectar primeiro");
if ($modo == "simples"){
$lista = ftp_nlist($conn_id,$diretorio);
} elseif ($modo == "detalhada"){
$lista = ftp_rawlist($conn_id,$diretorio);
}
for ($x=0;$x
Veja que na primeira linha da função listar, ficaría o modo (se simples ou detalhado), o diretório atual, antes e depois.
Abaixo, ele faría a verificação se a conexão estava funcionando e após isso definiria o conteúdo dentro das especificações (usando o ftp_nlist ou o ftp_rawlist).
Para a matéria de hoje, estaremos postando apenas um exemplo simples, mas que já supre a necessidade de quem quer visualizar seus ficheiros no site (conforme imagem e script abaixo descrito).
Nome
|
Tamanho
|
Última Modificação
|
echo $item ?> | echo $tamanho ?> | echo $data ?> |
// fechando a conexao FTP ftp_close($conn_id); ?>
Prático, não?
Bem... este é apenas um pontapé inicial...
Abaixo você poderá ver alguns modelos para que você implemente seu conteúdo:
OBS.: Para que você não tenha sobre como implementar o conteúdo abaixo, em anexo temos o ficheiro "comandos.txt" que deverá lhe ajudar a entender as variáveis.
function upload($fonte,$destino,$modo) {
if ($conn_id == "") die("Você deve conectar primeiro");
ftp_put($conn_id,$destino,$fonte,$modo);
}
Na função acima, através do ftp_put você poderá efetuar o UPLOAD do conteúdo ao Servidor.
function download($fonte,$destino,$modo) {
if ($conn_id == "") die("Você deve conectar primeiro");
ftp_get($conn_id,$destino,$fonte,$modo);
}
Na função acima, através do ftp_get você poderá efetuar o DOWNLOAD do conteúdo do Servidor.
function renomear($antigo,$novo) {
if ($conn_id == "") die("Você deve conectar primeiro");
ftp_rename($conn_id,$antigo,$novo);
}
Na função acima, através do ftp_rename você poderá efetuar a alteração do nome do arquivo ou diretório.
function deletar($alvo) {
if ($conn_id == "") die("Você deve conectar primeiro");
ftp_delete($conn_id,$alvo);
}
Na função acima, através do ftp_delete você poderá efetuar a exclusão de um ficheiro disponível no Servidor.
function diretorio($modo,$caminho) {
if ($conn_id == "") die("Você deve conectar primeiro");
if ($modo == "criar") {
ftp_mkdir($conn_id,$caminho);
} elseif ($modo == "remover") {
ftp_rmdir($conn_id,$caminho);
}
}
Na função acima, através do ftp_rmdir você poderá criar ou remover diretório do Servidor.
function tamanho($alvo) {
if ($conn_id == "") die("Você deve conectar primeiro");
$tam = ftp_size($conn_id,$alvo);
if ($tam == -1) {
echo "Arquivo não encontrado";
} else {
echo $tam;
}
}
Apesar de ser pouco usada a função tamanho poderá lhe auxiliar descobrindo se existe ou não um ficheiro no Servidor.
Bem... ficamos por aqui com mais uma matéria de PHP. Espero que com as dicas acima possamos lhe ajudar em algo.
Download do código usado neste tutorial: Conexão Via FTP Com PHP
Foi publicado novo artigo onde está matéria é desenvolvida: Conexão Via FTP – Arquivos Dum Diretório
One Response
a aplicação não esta funcionando, ela até cria a tabela mas não lista as arquivos do diretorio.
se puder ajudar agradeço.