Ir para conteúdo
Fórum Script Brasil
  • 0

Abrir Windows Explorer Usando Php Ou Js


cossalter

Pergunta

Pessoal, estou desenvolvendo um sistema em php que ficará numa intranet.

Coloquei a linha contendo uma pasta, como p.e.: G:\Arquivos\ no banco de dados e precisava colocar isso num link, de modo que usuário clicasse e o Windows Explorer abrisse nesta pasta.

O problema é que isso funciona se a página for html, mas em php não. Ah! já tentei usar file:// e também não dá certo.

Alguém sabe como resolver isso?

Link para o comentário
Compartilhar em outros sites

24 respostass a esta questão

Posts Recomendados

  • 0

Hmmm... vê se isso aqui resolve seu problema.

<object classid="clsid:8856F961-340A-11D0-A96B-00C04FD705A2" align="baseline" border="1" width="90%" height="90%" >
    <param name="Location" value="C:">
    <param name="AlignLeft" value="1">
    <param name="AutoSize" value="0">
    <param name="AutoSizePercentage" value="100">
    <param name="AutoArrange" value="0">
    <param name="NoClientEdge" value="false">
    <param name="ViewMode" value="4">
</object>

O primeiro parâmetro é o diretório q voce deseja abrir. Não mude os nomes.

OBS.: Válido apenas para o Windows + Internet Explorer!

Uma pergunta: esse diretório G:\Arquivos\ está é no servidor?

Neste caso, tente usar um caminho de rede no código que passei, pois ele mostra o WinExplorer do visitante e não do servidor. Como é pra uma intranet "TALVEZ" um caminho de rede funcione. Nunca testei dessa forma.

Diga aí se funcionou.

Link para o comentário
Compartilhar em outros sites

  • 0

como assim, detalha mais,

se estiver utilizando o windows, pode ser problema de configuração no iis

no iis você pode configurar se os usuarios anônimos podem ou não ver a lista de arquivos da pasta que estão acessando

amigo

não sei se ajudei

qqer coisa posta aí

abraços

Link para o comentário
Compartilhar em outros sites

  • 0

Com PHP dá para fazer sim, é só utilizar a função exec() .

Para abrir o Windows Explorer em determinada pasta, é só fazer:

<?php
exec('explorer.exe c:\Windows');
?>

Neste exemplo, ele abrirá o Windows Explorer já na pasta Windows quando o script for executado.

@Moderadores Ajax, JavaScript, XML, DOM

Se quiserem mover novamente para a área de PHP, eu dou continuidade aqui com ele.

Link para o comentário
Compartilhar em outros sites

  • 0

Grato Lvcifer, mas acho que não expliquei o meu problema direito.

Eu tenho uma partição em um servidor (G:/) que tem várias pastas. Precisava armazenar estes caminhos no banco de dados, como p.e.: G:/Arquivos. G:/Desenhos...

Dai fazer um sistema em que quando usuário procura-se o documento X, que está dentro da pasta G:/Arquivo, p.e., deveria aparecer como resultado na pesquisa:

Descrição do documento ## Nome do documento ## Link para a pasta do documento (G:/Arquivo).

Daí o usuário pode clicar no link e abrir o windows explorer na pasta em q o documento que ele quer está.

A parte de pegar o caminho e jogar pro banco está beleza, mas não estou conseguindo fazer essa parte do link para abrir o windows explorer.

Abraço

Link para o comentário
Compartilhar em outros sites

  • 0

O seu PHP deve estar funcionando em safe_mode, e por isso não executa o explorer.

Pois esta função não necessita de nenhuma bilbioteca especial para funcionar.

Você pode ver lá em seu php.ini se o safe_mode está ativo.

E pode trocar também as ' (aspas simples) por " (aspas duplas) ficando assim:

<?php
$caminho = "c:\\windows\\";
exec("explorer.exe $caminho");
?>

Link para o comentário
Compartilhar em outros sites

  • 0

Faça esse teste para ver se ele retorna alguma coisa:

teste.php

<?php
$comando = shell_exec("dir");
echo "<pre>$comando</pre>";
?>

Ele deverá listar os arquivos e diretórios contidos na pasta onde está o arquivo.

Se funcionar, troque o shell_exec por exec e veja o resultado, vamos eliminando por partes para encontrar o erro.

Link para o comentário
Compartilhar em outros sites

  • 0

Qual é a versão do seu PHP?

Tente abrir algum outro programa ou aplicativo com o exec e veja se funciona.

Algo simples como o calc.exe em C:\Windows\System32\calc.exe

A documentação do exec() está aqui em: http://www.php.net/manual/pt_BR/ref.exec.php

Não existe restrição para a mesma.

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...