Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

metalheart

Como usar fopen remotamente?

Recommended Posts

Galera é seguinte, to usando da seguinte forma para acessar um arquivo em outro computador (com linux)

 

$handle = @fopen("ftp://meuusuario:minhasenha@192.168.2.1/u/usuarios/nomedousuario/info.txt", "r");

 

Gostaria de saber como ficaria para acessar outro arquivo em um outro computador com windows 2000, no diretório F:\Serv por exemplo!!

É necessário mapear esta unidade no servidor???

 

Abraço!

Compartilhar este post


Link para o post
Compartilhar em outros sites

hinom, não consegui através do ftp..

 

Eu consegui "enxergar" o computador remoto pelo através do fsockopen

<?php
$ip = "192.168.xx.xxx";
$fp = fsockopen("udp://$ip", 13, $errno, $errstr);
if (!$fp) {
	echo "ERRO: $errno - $errstr<br />\n";
} else {
	fwrite($fp, "\n");
	echo fread($fp, 26);
	echo "Conectado a: <strong>".gethostbyaddr("$ip")."</strong> ($ip)";
	fclose($fp);
}
?>

Apartir daqui, gostaria de pegar o conteúdo de um arquivo .txt localizado no C:\

 

É necessário compartilhar a unidade? Mapea-la no servidor??? Como seria?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom, o script so funcionou com o protocolo UDP, não sei porque! Não sei qual o protocolo ideal..

 

Veja bem, o php (4.3) roda em um computador com IIS e Mysql, cujo IP é 192.168.x.12, e preciso acessar um arquivo .txt em um outro computador, no diretorio F:\Serv (está compartilhado), cujo IP é 192.168.x.230, isso td em uma rede local (Intranet).

 

 

Obrigado hinom, tamo quase lá

Flw

Compartilhar este post


Link para o post
Compartilhar em outros sites

web server

na máquina .230 possui algum serviço de web server (apache, iis) ?

 

Se possuir serviço web basta aplicar um path para o local do arquivo txt

Usando o PHP, poderia fazer algo simples assim:

<?php
$rs = file( 'http://192.168.1.230/caminho_do_arquivo.txt' );

?>

 

mapeamento de rede

Se não quiser ativar um serviço web basta compartilhar o arquivo e criar um mapeamento de rede.

Por meio do php, basta aplicar o caminho do mapeamento

 

<?php
$rs = file( '//192.168.1.230/caminho_do_compartilhamento/nome_do_arquivo.txt' );

?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

No .230 não opossui webserver... Vou tentar a solução do mapeamento. Nesse caso devo mapear a unidade F:\Serv (192.168.x.20) no servidor onde roda o PHP (192.168.x.12). Certo??

 

Assim q possivel posto aqui...

 

Tnks hinom

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara, estou tentando fazer apenas um include do arquivo .txt, pra ver ser aparece, mas nem assim to conseguindo... :(

 

Tentei da forma q você disse mas nao deu certo, dá "..failed to open stream: No such file or directory".

 

Qdo coloco por exemplo o path da rede (f:/192.168.2.230/d/Serv/arquivo.txt) aparece, failed to open stream: Permission denied

 

E a unidade já está mapeada

Compartilhar este post


Link para o post
Compartilhar em outros sites

1. você criou a unidade F apontando mapeamento para a maquina .230,

a qual leva para o caminho do arquvo txt.

[ok]

 

2. o arquivo está compartilhado ? com permissões de rede que permitam a leitura ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

1. Sim, exatamente, o path da unidade F: aponta diretamente para o arquivo

 

2. O diretório está compartilhado sim, com permissão de leitura, escrita para todos..

 

 

Bom, acabei fazendo da seguinte forma: instalei o Filezilla Server na maquina .230 e acessei o arquivo utilizando o fopen via ftp

 

$handle = @fopen("ftp://meuusuario:minhasenha@192.168.x.230/nomedapasta/arquivo.txt", "r")

Vou continuar testando... Qualquer sugestão posta aí

 

 

Flw hinom

Compartilhar este post


Link para o post
Compartilhar em outros sites

apenas um teste para certificar-se

 

na máquina .12

clique em Iniciar -> executar

 

colo o caminho do arquivo txt

 

"f:/192.168.2.230/d/Serv/" (sem as aspas)

 

pressine ENTER ou clique OK

 

veja o que acontece

Compartilhar este post


Link para o post
Compartilhar em outros sites

ao fazer isso, solicita a o login da rede (se nao estiver logado como adminitrador) e entao abre o arquivo .txt

 

 

A forma que fiz utilizando um servidor de FTP oferece alguma desvantagem em relação à desempenho ou segurança??

Recomenda algum ftp server alem do Filezilla??

Compartilhar este post


Link para o post
Compartilhar em outros sites

não há desvantagem, tendo em vista que é uma operação simples e estará rodando sempre num ambiente local de rede.

 

quanto ao filezilla, é o único gratuito e confiável atualmente.

 

outro modo simples de resolver seria instalação do Apache na máquina .230

 

para ler o arquivo, faria apenas:

$rs = file( 'http://nome_do_230/caminho_do.txt' );

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.