narizgudo 0 Denunciar post Postado Dezembro 2, 2007 Boa madruga pra tds =D Eu tava aqui "estudando" classes e resolvi fazer uma pra conectar a um servidor FTP, já que meu PC ta retardado e num funfa mais meu programinha de FTP =/ Eu coloquei umas funções básicas e acho q ta bem explicado. Se alguem tiver alguma ideia, pode ser pra colocar na classe ou até mesmo algo pra melhorar no modo de criar a classe... já q ainda so novo nisso. PHP <?/* ** Criada por: Tarcísio Xavier Gruppi ** txgruppi@gmail.com ** ** EXEMPLO ** ** $ftp = new ftp; ** $ftp -> host = "localhost"; ** $ftp -> user = "root"; ** $ftp -> pass = "****"; ** $ftp -> listar("simples","/","","<br>")/ ** ** ********************************************************************* ** COMANDOS ** ** conecta() ** Conecta ao servidor FTP ** ********************************************************************* ** listar(modo,diretorio,antes,depois) ** Lista as arquivos de um diretório ** ** modo ** simples - exibe uma lista simples, caminho e nome do arquivo ** detalhada - exibe uma lista detalhada com permissões, dono, grupo, ** tamanho, ultima modificação e nome do arquivo ** ** diretorio ** diretorio a ser lsitado ** ** antes ** string escrita antes do nome do arquivo ** ** depois ** string escrita depois do nome do arquivo ** ********************************************************************* ** upload(fonte,destino,modo) ** Envia um arquivo para o servidor FTP ** ** fonte ** local do arquivo de origem no servidor local ** ** destino ** local onde o arquivo deve ser colocano no servidor FTP ** ** modo ** FTP_ASCII ** FTP_BINARY ** * o modo deve ser escrito com letras maiusculas e sem aspas * ** ********************************************************************* ** download(fonte,destino,modo) ** Envia um arquivo para o servidor FTP ** ** fonte ** local do arquivo de origem no servidor FTP ** ** destino ** local onde o arquivo deve ser colocano no servidor local ** ** modo ** FTP_ASCII ** FTP_BINARY ** * o modo deve ser escrito com letras maiusculas e sem aspas * ** ********************************************************************* ** renomear(antigo,novo) ** Renomeia um arquivo ou diretorio ** ** antigo ** nome atual do arquivo ou diretorio ** ** novo ** novo nome do arquivo ou diretorio ** ********************************************************************* ** deletar(alvo) ** Deleta um arquivo do servidor FTP ** ** alvo ** caminho do arquivo a ser deletado ** ********************************************************************* ** diretorio(modo,caminho) ** Cria ou remove um direitorio do servidor FTP ** ** modo ** criar - cria um diretorio ** remover - remove um diretorio ** ** caminho ** caminho do diretorio ** ********************************************************************* ** tamamnho(alvo) ** Pega o tamanho de um arquivo ** ** alvo ** caminho do arquivo */ class ftp { var $host; // host do servidor ftp var $user; // nome do usuario var $pass; // senha do usuario var $conn; // stream da conexao com o servidor ftp function conecta() { if ($this->host == "") die("HOST não definido"); if ($this->user == "") die("USER não definido"); if ($this->pass == "") die("PASS não definido"); $this->conn = ftp_connect($this->host) or die("Não foi possível conectar ao servidor FTP"); if (!ftp_login($this->conn,$this->user,$this->pass)){ die("Erro ao logar no servidor. Usuário ou senha inválidos."); } } function listar($modo,$dir,$ant,$dps) { if ($this->conn == "") die("Você deve conectar primeiro"); if ($modo == "simples") { $lista = ftp_nlist($this->conn,$dir); } elseif ($modo == "detalhada") { $lista = ftp_rawlist($this->conn,$dir); } for ($x=0;$x<count($lista);$x++) { echo $ant.$lista[$x].$dps; } } function upload($fonte,$destino,$modo) { if ($this->conn == "") die("Você deve conectar primeiro"); ftp_put($this->conn,$destino,$fonte,$modo); } function download($fonte,$destino,$modo) { if ($this->conn == "") die("Você deve conectar primeiro"); ftp_get($this->conn,$destino,$fonte,$modo); } function renomear($antigo,$novo) { if ($this->conn == "") die("Você deve conectar primeiro"); ftp_rename($this->conn,$antigo,$novo); } function deletar($alvo) { if ($this->conn == "") die("Você deve conectar primeiro"); ftp_delete($this->conn,$alvo); } function diretorio($modo,$caminho) { if ($this->conn == "") die("Você deve conectar primeiro"); if ($modo == "criar") { ftp_mkdir($this->conn,$caminho); } elseif ($modo == "remover") { ftp_rmdir($this->conn,$caminho); } } function tamanho($alvo) { if ($this->conn == "") die("Você deve conectar primeiro"); $tam = ftp_size($this->conn,$alvo); if ($tam == -1) { echo "Arquivo não encontrado"; } else { echo $tam; } } } ?> Flw! =D Compartilhar este post Link para o post Compartilhar em outros sites
narizgudo 0 Denunciar post Postado Dezembro 6, 2007 Fiz um cliente ftp online usando essa classe. Quem quiser ver... ta aih http://www.sjnetonline.com.br/~topera/ftp/ Flw! Compartilhar este post Link para o post Compartilhar em outros sites
Marlon Souza 0 Denunciar post Postado Dezembro 11, 2007 muito bom, tava procurando isso semana passada, um ftp online, pra subir umas coisas na faculdade, agora que eu sei que esse funfa, vou utilizar sempre. muito bom parabens http://forum.imasters.com.br/public/style_emoticons/default/clap.gif http://forum.imasters.com.br/public/style_emoticons/default/worshippy.gif http://forum.imasters.com.br/public/style_emoticons/default/joia.gif Compartilhar este post Link para o post Compartilhar em outros sites
wbatera 0 Denunciar post Postado Dezembro 12, 2007 Show de Bola !!! Parabéns... uma pergunta e ao mesmo tempo sugestão... Criar subdominio !?! se adicionar isso fica ninja ! estou procurando em tudo quanto é canto e não acho nenhum codigo... Falow Compartilhar este post Link para o post Compartilhar em outros sites
narizgudo 0 Denunciar post Postado Dezembro 12, 2007 Opa, vlw! =D Quem sabe um dia faço um Cliente FTP Online + bunitin ^^ wbatera... como assim, criar subdominio? FLw! Compartilhar este post Link para o post Compartilhar em outros sites
wbatera 0 Denunciar post Postado Dezembro 13, 2007 criar um subdomino sem precisar entrar no cpanel, vamos supor se eu loga-se no seu ftp online e apartir dele conseguisse administrar os subdominios da minha conta.... Deve ser embassado mas estou precisando de algo do tipo... Compartilhar este post Link para o post Compartilhar em outros sites
narizgudo 0 Denunciar post Postado Dezembro 14, 2007 Ve se é isso. você tem um servidor com vários Usuários, kd um é um cliente seu... você quer logar em 1 único usuário e ter controle de todos os seus clientes? Se for isso basta ter um usuario cadastrado no servidor que não fique travado na pasta Home dele... aih você pode rodar por todos os outros, e deixa o grupo dele com o mesmo grupo do resto, pra que nenhum arquivo fique bloqueado pelas permicoes. Flw! Compartilhar este post Link para o post Compartilhar em outros sites
Mike_X 0 Denunciar post Postado Dezembro 21, 2007 Pow axei massa, agora como ultilzar a classe? keria colocar no meu server tem como? tipo com seria a pagina de login senha etc? qndo acesso http://www.sjnetonline.com.br/~topera/ftp/ da "HOST não definido" :D Compartilhar este post Link para o post Compartilhar em outros sites
Programer 0 Denunciar post Postado Setembro 18, 2008 Boa tarde amigo, teste seu cliente de ftp e ele é show;; nao consegui fazer funcionar.... tem como você postar o codigo da index, ou no caso da pagina que usamos pra login pra eu ver como usar a clase que você criou? desde ja te agradeço Compartilhar este post Link para o post Compartilhar em outros sites
narizgudo 0 Denunciar post Postado Setembro 20, 2008 pra quem quiser o cliente ftp: http://www.txgruppi.com/ftp.rar Compartilhar este post Link para o post Compartilhar em outros sites
Programer 0 Denunciar post Postado Outubro 14, 2008 Bom dia amigo,, primeiramente gostaria de agrader por seder o cliente ftp.. realmente ficou muito bom... mas gostaria de te fazer uma pergunta.. eu sou novo na questao de php oo. entoa gostaria de saber como faço pra poder escolher em que pasata o arquivo vai ser baixado? desde já agradeço Compartilhar este post Link para o post Compartilhar em outros sites
Joeljatem 0 Denunciar post Postado Outubro 22, 2008 Narizgudo seria possivel você postar o arquivo.rar novamente? agradeço.. abraços Compartilhar este post Link para o post Compartilhar em outros sites