ftp

1. ftp

Everton da Silva
reimassupilami

(usa Slackware)

Enviado em 13/01/2006 - 16:19h

pow, essa semana to movimentando essa comunidade hein, hehuehuahaua...

pessoal, seguinte, to faendo um script pra ftp no php... até esta rodando legal, faz o ftp certinho, só q da o seguinte warning:

Warning: ftp_rawlist() [function.ftp-rawlist]: Unable to create temporary file. Check permissions in temporary files directory

tem algum diretorio temporario usado pelo php pra isso, onde eu possa verificar as permissões?


  


2. Re: ftp

Diego Rodrigo Machado
bestlinux

(usa Ubuntu)

Enviado em 13/01/2006 - 16:45h

Fala ae....blz :-)

Então...você precisa ter criado o diretorio:

C:\tmp

Claro, se você estiver usando Windows...

E caso esteja usando Linux, verifique se você tem o diretorio:

/tmp

E de permissão para ele:

#chmod 777 /tmp

Você também pode mudar o local do diretorio temporario....no arquivo php.ini procure uma linha mais ou menos assim:

default tmp directory

Falow !





3. Re: ftp

Everton da Silva
reimassupilami

(usa Slackware)

Enviado em 13/01/2006 - 17:06h

ow, q isso? me estranhando? linux mesmo amigão, ehuehauhuahua...

pois é, até tem esse diretorio temporario, com permissoes e tudo... só nao sabia q era o mesmo...

vou dar uma conferida...


4. Re: ftp

Everton da Silva
reimassupilami

(usa Slackware)

Enviado em 13/01/2006 - 17:30h

cara, muito estranho... o diretorio tmp do php ta funcionando certinho, afinal é o mesmo usado pelas sessions e uploads, né mesmo? nao sei pq ta dando essa mensagem com ftp... o ftp funciona certinho, mas da essa mensagem...

na verdade acho q tem mais a ver com a função ftp-rawlist, usada pra listar diretorio... pois é nessa linha q da o warning...


5. Re: ftp

Diego Rodrigo Machado
bestlinux

(usa Ubuntu)

Enviado em 13/01/2006 - 17:32h

Cara....pelo que vi no php.net....esta função é usada para listar diretorios....por que você esta usando ela ?

<?php

// set up basic connection
$conn_id = ftp_connect($ftp_server);

// login with username and password
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);

// get the file list for /
$buff = ftp_rawlist($conn_id, '/tmp');

// close the connection
ftp_close($conn_id);

// output the buffer
var_dump($buff);
?>


6. Re: ftp

Everton da Silva
reimassupilami

(usa Slackware)

Enviado em 13/01/2006 - 17:43h

justamente, é pra isso mesmo, lista os arquivos do diretorio... é q no exemplo q to usando pra aprender tem isso, mas pro que vou implementar nao sera necessario, entao acho q da pra eliminar isso...

mas mesmo assim, ficou a curiosidade em tentar resolver, ehehehe...


7. Re: ftp

Everton da Silva
reimassupilami

(usa Slackware)

Enviado em 16/01/2006 - 15:34h

aew meu amigo, baum? cara continui na mesma, não consigo esse esquema de listar o diretório, da erro no diretorio temporario, mas nao sei onde isso, aff nossa... to usando um script bem simplezinho pra testar:

<?php

// define a conexão básica
$conn_id = ftp_connect($ftp_server);

// login com nome de usuário e senha
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);

// obtém a lista de arquivos para /
$buff = ftp_rawlist($conn_id, '/');

// fecha a conexão
ftp_close($conn_id);

// mostra a saída
var_dump($buff);
?>

dae da o seguinte warning:

Warning: ftp_rawlist() [function.ftp-rawlist]: Unable to create temporary file. Check permissions in temporary files directory.

q sera isso hein? nao entendo... o diretorio temporario do php ta certinho, senao nao funcionava outras coisas como upload e sessions...


8. Re: ftp

Diego Rodrigo Machado
bestlinux

(usa Ubuntu)

Enviado em 16/01/2006 - 15:57h

Cara.....não sei se você ja tentou isso....mas vamos la..rs.rs..

Quando você acessa o servidor:

// login com nome de usuário e senha
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);

Você esta logando com o usuario $ftp_user_name (provavelmente um usuario que exista)...

Você ja verificou se este usuario tem permissão de leitura ao diretorio temporiario do PHP ?

Lembrando que upload....basta o usuario ter permissão de escrita ao diretorio....não necessariamente...precisa de permissão de leitura....

Falow !


9. Re: ftp

Everton da Silva
reimassupilami

(usa Slackware)

Enviado em 16/01/2006 - 16:09h

quando vc diz diretorio temporario do php, vc quer dizer o diretorio do meu servidor aqui na minha redem, onde estou rodando o script do php, certo? se for, cara, ja arreganhei tudo as permissoes, ta com 777... no caso seria o mesmo diretorio de upload e sessions, né?

mas nesse caso, os usuarios nao tem nada a ver... o usurio q uso pra me conectar ao ftp, q é externo, nao é o mesmo do meu servidor onde ta rodando o script...


10. Re: ftp

Diego Rodrigo Machado
bestlinux

(usa Ubuntu)

Enviado em 16/01/2006 - 16:13h

"mas nesse caso, os usuarios nao tem nada a ver... o usurio q uso pra me conectar ao ftp, q é externo, nao é o mesmo do meu servidor onde ta rodando o script..."

Você ja tentou adicionar este usuario externo no seu servidor....?? E das as permissões necessarias para ele no diretorio temporario ??


11. Re: ftp

Everton da Silva
reimassupilami

(usa Slackware)

Enviado em 16/01/2006 - 16:31h

tentei sim, agora, mas deu na mesma... acho q nao é isso nao...

tenho a impressao q esse diretorio temporario deveria ser configura no php, em algum lugar, e como nao tem nenhuma linha no php.ini sobre isso, derepente ele pode estar pegando algum outro diretorio, q nao sei qual é...


12. Re: ftp

Diego Rodrigo Machado
bestlinux

(usa Ubuntu)

Enviado em 16/01/2006 - 16:55h

Cara...achei duas coisas.....uma é o ftp_chmod....você da permissão no arquivo:

<?php
$file = 'public_html/index.php';

// set up basic connection
$conn_id = ftp_connect($ftp_server);

// login with username and password
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);

// try to chmod $file to 644
if (ftp_chmod($conn_id, 0644, $file) !== false) {
echo "$file chmoded successfully to 644\n";
} else {
echo "could not chmod $file\n";
}

// close the connection
ftp_close($conn_id);
?>

O outro, é o ftp_chdir, você altera o diretorio de FTP do servidor:

<?php

// set up basic connection
$conn_id = ftp_connect($ftp_server);

// login with username and password
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);

// check connection
if ((!$conn_id) || (!$login_result)) {
die("FTP connection has failed !");
}

echo "Current directory: " . ftp_pwd($conn_id) . "\n";

// try to change the directory to somedir
if (ftp_chdir($conn_id, "somedir")) {
echo "Current directory is now: " . ftp_pwd($conn_id) . "\n";
} else {
echo "Couldn't change directory\n";
}

// close the connection
ftp_close($conn_id);
?>

Veja se ajuda.

Falow !



01 02



Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts