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

Página não encontrada..


Flávia Dirk

Pergunta

Oi!!

Estou trabalhando com o seguinte exemplo:

dim camCont   
  
camCont = "\\SS\Bs_publico$\Teste\intranet\documentos\RAC" & dados(k,3) & dados(k,1)& ".doc"   
  
Response.Write    
("<td><a href='" & camCont & "'><img src='relatorio3.gif' alt='Relatorio'></a></td>")

Ao clicar na imagem abre um doc em word nomeado pelos dados filtrados na sql:

dados(k,3) - número do contrato

dados(k,1) - número da classe

Problema: Caso esse documento não exista dá o erro de 'página não encontrada'.

Teria como verificar se não vai encontrar a página (o documento) e não abrir nada, continuar na página atual??

Att.

Link para o comentário
Compartilhar em outros sites

13 respostass a esta questão

Posts Recomendados

  • 0

Oi gente! Obrigada pela ajuda!!

Mas tenho uma dúvida, como ficaria isso no response.write???

Coloquei com o exemplo do Jow:

teste = "<td><a href='"
                     if Not (fs.FileExists(camCont)=true) then 
                          teste=teste & "#"'><img src='relatorio3.gif' alt='Relatorio'></a></td>")
                     else 
                          teste=teste & camCont & "'><img src='relatorio3.gif' alt='Relatorio'></a></td>")
     end if        

Response.Write (teste)
if Not (fs.FileExists(camCont)=true) then 
    camCont = "#"
else 
    camCont = camCont
end if
Response.Write    
("<td><a href='" & camCont & "'><img src='relatorio3.gif' alt='Relatorio'></a></td>")

Fiz com o código do Rafael também, na mesma colocação. Mas em nenhum dos 2 aparece a figura. Assim q você abre a página as figuras não aparecem

A imagem a ser clicada tem q aparecer sempre, e a verificação só será rodada quando clicarem na imagem.

OBS.: a minha página mostra todos os contratos (principais dados) q tenho (q nem um form contínuo) do lado de cada contrato tem uma imagem q abre o contrato em word. É esse o meu caso, caso o contrato não exista em word gostaria q não acontece nada, no lugar de ficar abrindo a "Página não pode ser exibida".

Editado por Flávia Dirk
Link para o comentário
Compartilhar em outros sites

  • 0

heheh não entendi nada ... você quer q sempre apareça a figura e só depois q clicar fazer a verificação, se existe ou não, se for

exibe as figuras aki, com um parametro

'aki você deve usar um um if para saber se o parametro acima não está vazio
    if Not (fs.FileExists(camCont)=true) then
        camCont = "#"
    else
        camCont = camCont
    end if
    Response.Write    
    ("<td><a href='" & camCont & "'><img src='relatorio3.gif' alt='Relatorio'></a></td>")
'aki você fecha o primeiro if, q deverá ser aberto

Link para o comentário
Compartilhar em outros sites

  • 0

bom se o que acontece é página não encontrada, seria só configurar o arquivo de erros, de forma que ele exiba uma mensagem no 404.

agora por um acaso seu FSO tá completo??

Ótima referencia:

http://www.w3schools.com/asp/asp_ref_filesystem.asp

<%
Set fs=Server.CreateObject("Scripting.FileSystemObject")

If (fs.FileExists("c:\winnt\cursors\3dgarro.cur"))=true Then
      Response.Write("File c:\winnt\cursors\3dgarro.cur exists.")
Else
      Response.Write("File c:\winnt\cursors\3dgarro.cur does not exist.")
End If

set fs=nothing
%>

Link para o comentário
Compartilhar em outros sites

  • 0

Oi Jow! Pensei melhor e a idéia do Bareta fica ótima junto a tua!

Aí ficaria assim:

Pretendo colocar em cada imagem um id com o mesmo nome do arquivo q pretendo abrir.

Quando a página for aberta irei listar todos os arquivos existentes, se caso o id da imagem não bater com o com algum arquivo não mostrarei akela imagem.

Vou testar os seus códigos e já volto para postar o resultado (dúvida ou solução) =]

Link para o comentário
Compartilhar em outros sites

  • 0

Dúvida:

dim RAC
dim idRAC
dim espaco
dim teste

RAC = "\\SS\Bs_publico$\Teste\intranet\documentos\RAC" & dados(k,3) & dados(k,1)& ".doc"

idRAC = "RAC" & dados(k,3) & dados(k,1) & ".doc"

Set fs=Server.CreateObject("Scripting.FileSystemObject")

teste = (fs.FileExists(RAC))

if teste = idRAC then
espaco = "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"
Response.Write("<td><a href='" & RAC & "'  id='" & idRAC & "'><img src='relatorio3.gif' alt='Relatorio'></a></td>")    
else
'não mostra nada    
end If

set fs=nothing

Baseado na minha idéia postada acima.

No momento estou com somente um arquivo existe, referido ao 1º contrato. Então pela lógica o 1º contrato deveria mostrar o "botão" (imagem) para clicar e abrir o documento.

Erro: o código acima está tirando a imagem de todos.

O q está errado nele?!?!!

Editado por Flávia Dirk
Link para o comentário
Compartilhar em outros sites

  • 0

isso acontece porque pelo seu if as informações são sempre diferentes...

teste = (fs.FileExists(RAC))

if teste = idRAC then
a variavel teste me retorna um teste lógico... (true / false) sobre o arquivo existir ou não logo:
if (true/false) = (arquivo.doc) then
sempre irá retornar false.... e não mostrar nada neste trecho:
else
'não mostra nada    
end If

se não terá nada entre o else e o end if, não precisa nem colocar o else.

Link para o comentário
Compartilhar em outros sites

  • 0

Como posso conseguir comprarar com o nome do arquivo?

Ficaria:

Set fs=Server.CreateObject("Scripting.FileSystemObject")
teste = (fs.FileExists(RAC))
if teste = true then 'se arquivo existe
if (nome do arquivo) = idRAC then 'compara o nome do arquivo com o nome do botão
...

Com qual termo conseguiria puxar o nome do arquivo.

Em relação ao else, estou usando porque tem mais códigos q vão rolar dentro dele, só a imagem q não vai entrar.

Editado por fdirk
Link para o comentário
Compartilhar em outros sites

  • 0

Consegui puxar o nome do arquivo pelo:

"(fs.GetFileName(file))"

Erro: O arquivo existe mas o código está dizendo q não

dim RAC
dim idRAC
dim espaco
dim teste

RAC = "\\SS\Bs_publico$\Teste\intranet\documentos\RAC" & dados(k,3) & dados(k,1)& ".doc"

idRAC = "RAC" & dados(k,3) & dados(k,1) & ".doc"

Set fs=Server.CreateObject("Scripting.FileSystemObject")

if not (fs.FileExists(RAC)=true) then
Response.Write("não existe")
else

teste = (fs.GetFileName(RAC))

if teste = idRAC then

espaco = "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"
Response.Write("<td><a href='" & RAC & "'  id='" & idRAC & "'><img src='relatorio3.gif' alt='Relatorio'></a></td>")    

end if
    
end If
set fs=nothing

São ao td 20 contratos, o 1º existe um doc. Mas esse código acima está dizendo q nenhum existe. O q pode estar acontecendo?!?!?!

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...