Ir para conteúdo

POWERED BY:

Arquivado

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

Full Burn

Problemas com comando ASC()

Recommended Posts

Bom dia a todos,

 

Migrei um site de um servidor para o outro e está dando este erro que não acontecia no servidor antigo:

 

Microsoft VBScript runtime error '800a0005'

Invalid procedure call or argument: 'Asc'

/funcoes.asp, line 105

 

Este é o código:

 

Function hash(texto) 
  Dim cripta
  cripta = ""
  For i = 1 To Len(texto)
	If cripta = "" Or i > Len("0123456789") Then x = 1 Else x = x + 1
	cripta = cripta & Chr(255 - (Asc(Mid(texto, i, 1))) + Int(Mid("0123456789",x,1))  ) ---> Linha 105
  Next
  hash = cripta
End Function

Já tirei o ASC e aí passa a dar erro no Chr.

 

Tenho receio de mudar muito, pois esta é uma função de criptografia e já existem muitos registros no banco que estão criptografados.

 

O que posso fazer?

 

Obrigado

Compartilhar este post


Link para o post
Compartilhar em outros sites

Testei o código acima aqui e funcionou perfeitamente, para a palavra hargon.

 

Talvez o erro seja para uma palavra em especifica. Qual você testou?

Compartilhar este post


Link para o post
Compartilhar em outros sites

hargon,

 

Boa tarde,

 

Este erro ocorreu no retorno de uma transação da Visanet.

 

A criptografia para gravação no banco funciona normalmente, nos locais do site tb.

 

Somente no momento de pegar o TID da transação que está criptografado no banco e descriptografar para mandar para o e-mail do cliente que dá o erro.

 

[]'s

Compartilhar este post


Link para o post
Compartilhar em outros sites

Simule uma string que faz dar o erro e poste para fazermos alguns testes.

Compartilhar este post


Link para o post
Compartilhar em outros sites

verifique se naun esta usando palavras reservadas...

Isso geralmente acontece porque você usou um VBScript "nome amigável" ,uma constante no local de seu inteiro equivalente

Compartilhar este post


Link para o post
Compartilhar em outros sites

tem que ver qual carácter deu erro

 

pode fazer isso simplesmente mandando escrever o valor dom MID antes desta linha assim quando der erro será o carácter acima o culpado ai saberá melhor o que houve

Compartilhar este post


Link para o post
Compartilhar em outros sites

Somente no momento de pegar o TID da transação que está criptografado no banco e descriptografar para mandar para o e-mail do cliente que dá o erro.

tenta dar um response.write TID antes , para ver o k esta sendo passado...

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.