Ir para conteúdo

POWERED BY:

Arquivado

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

andrerm

erro no insert

Recommended Posts

Micox fiz o que falou e não resolveu não o problema acho que está na função de criptografia.

Um exemplo de valor que tenho problema é 01124-010

 

A rotina que utilizo é

<%Const EncC1 = 109Const EncC2 = 191Const EncKey = 161Public Function Encriptar(Texto)Dim TempStr, TempResult, TempNum, TempCharDim TempKeyDim iTempStr = TextoTempResult = ""TempKey = ((EncKey * EncC1) + EncC2) Mod 65536For i = 1 To Len(TempStr)TempNum = (Asc(Mid(TempStr, i, 1)) Xor (AuxShr(TempKey, 8))) Mod 256TempChar = Chr(TempNum)TempKey = (((Asc(TempChar) + TempKey) * EncC1) + EncC2) Mod 65536TempResult = TempResult & TempCharNextEncriptar = TempResultEnd Function

Se coloco só

response.write Encriptar("01124-010")

Ele já da problema me retorna só uma parte do valor e para do nada e nem erro exibi

Compartilhar este post


Link para o post
Compartilhar em outros sites

Marcelo o meu problema não é na string de insert e sim no momento da criptografia estão sendo incluidos varias registro mais alguns valores são interrompidos e não deixam dar continuidade no código

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom... então vamos resolver o problema da função encriptar primeiro, depois você passa para o sql.

Primeiro tenta achar qual é o problema. Pra achar erros de lógica eu gosto de colocar vários response.write no código:

 

Const EncC1 = 109Const EncC2 = 191Const EncKey = 161Public Function Encriptar(Texto)Dim TempStr, TempResult, TempNum, TempCharDim TempKeyDim iTempStr = TextoTempResult = ""TempKey = ((EncKey * EncC1) + EncC2) Mod 65536REsponse.write("<br>1:" & TempKey ) 'primeiro response writeFor i = 1 To Len(TempStr) TempNum = (Asc(Mid(TempStr, i, 1)) Xor (AuxShr(TempKey, 8))) Mod 256 REsponse.write("<br>" & i & "TempNum:" & TempNum )  TempChar = Chr(TempNum) REsponse.write("<br>" & i & "TempChar:" & TempChar )  TempKey = (((Asc(TempChar) + TempKey) * EncC1) + EncC2) Mod 65536 REsponse.write("<br>" & i & "TempKey :" & TempKey )  TempResult = TempResult & TempChar REsponse.write("<br>" & i & "TempResult :" & TempResult ) NextEncriptar = TempResultEnd Function

TEnta achar aí onde é que tá dando o erro. sei lá...

Compartilhar este post


Link para o post
Compartilhar em outros sites

eh cara vamos debugar cada parte do codigo pra tentar encontrar a falha...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pelo que entendi quando a criptografia retorna vazio em um caracter não exibe o valor completo.

Agora o problema é como trata isso... o caracter que está retornando vazio nesse cado é -(hifen).

 

1:177402:1 - TempNum:153:1 - TempChar:4:1 - TempKey :349425:1 - TempResult :2:2 - TempNum:2013:2 - TempChar:É4:2 - TempKey :296905:2 - TempResult :É2:3 - TempNum:543:3 - TempChar:64:3 - TempKey :310235:3 - TempResult :É62:4 - TempNum:893:4 - TempChar:Y4:4 - TempKey :490635:4 - TempResult :É6Y2:5 - TempNum:2473:5 - TempChar:÷4:5 - TempKey :10295:5 - TempResult :É6Y÷2:6 - TempNum:653:6 - TempChar:A4:6 - TempKey :539015:6 - TempResult :É6Y÷A2:7 - TempNum:1513:7 - TempChar:—4:7 - TempKey :591555:7 - TempResult :É6Y÷A—2:8 - TempNum:1993:8 - TempChar:Ç4:8 - TempKey :472495:8 - TempResult :É6Y÷A—Ç2:9 - TempNum:2433:9 - TempChar:ó4:9 - TempKey :650115:9 - TempResult :É6Y÷A—Çó2:10 - TempNum:1803:10 - TempChar:´4:10 - TempKey :281225:10 - TempResult :É6Y÷A—Çó´2:11 - TempNum:323:11 - TempChar: 4:11 - TempKey :543215:11 - TempResult :É6Y÷A—Çó´ 1:177402:1 - TempNum:233:1 - TempChar:4:1 - TempKey :358145:1 - TempResult :2:2 - TempNum:1653:2 - TempChar:¥4:2 - TempKey :552785:2 - TempResult :¥2:3 - TempNum:2473:3 - TempChar:÷4:3 - TempKey :231045:3 - TempResult :¥÷2:4 - TempNum:243:4 - TempChar:4:4 - TempKey :307755:4 - TempResult :¥÷2:5 - TempNum:573:5 - TempChar:94:5 - TempKey :185435:5 - TempResult :¥÷92:6 - TempNum:63:6 - TempChar:4:6 - TempKey :559525:6 - TempResult :¥÷92:7 - TempNum:1583:7 - TempChar:ž4:7 - TempKey :213335:7 - TempResult :¥÷9ž2:8 - TempNum:223:8 - TempChar:4:8 - TempKey :341265:8 - TempResult :¥÷9ž2:9 - TempNum:2043:9 - TempChar:Ì4:9 - TempKey :66095:9 - TempResult :¥÷9žÌ2:10 - TempNum:753:10 - TempChar:K4:10 - TempKey :78515:10 - TempResult :¥÷9žÌK2:11 - TempNum:953:11 - TempChar:_4:11 - TempKey :143375:11 - TempResult :¥÷9žÌK_2:12 - TempNum:1183:12 - TempChar:v4:12 - TempKey :29225:12 - TempResult :¥÷9žÌK_v2:13 - TempNum:953:13 - TempChar:_4:13 - TempKey :13645:13 - TempResult :¥÷9žÌK_v_2:14 - TempNum:643:14 - TempChar:@4:14 - TempKey :247715:14 - TempResult :¥÷9žÌK_v_@2:15 - TempNum:513:15 - TempChar:34:15 - TempKey :188135:15 - TempResult :¥÷9žÌK_v_@31:177402:1 - TempNum:1253:1 - TempChar:}4:1 - TempKey :469325:1 - TempResult :}2:2 - TempNum:1293:2 - TempChar:4:2 - TempKey :180325:2 - TempResult :}1:177402:1 - TempNum:43:1 - TempChar:4:1 - TempKey :337435:1 - TempResult :2:2 - TempNum:2113:2 - TempChar:Ó4:2 - TempKey :311615:2 - TempResult :Ó2:3 - TempNum:453:3 - TempChar:-4:3 - TempKey :593095:3 - TempResult :Ó-2:4 - TempNum:1683:4 - TempChar:¨4:4 - TempKey :606565:4 - TempResult :Ó-¨2:5 - TempNum:1943:5 - TempChar:Â4:5 - TempKey :137055:5 - TempResult :Ó-¨Â2:6 - TempNum:213:6 - TempChar:4:6 - TempKey :545335:6 - TempResult :Ó-¨Â2:7 - TempNum:2313:7 - TempChar:ç4:7 - TempKey :56915:7 - TempResult :Ó-¨Âç2:8 - TempNum:393:8 - TempChar:'4:8 - TempKey :349375:8 - TempResult :Ó-¨Âç'1:177402:1 - TempNum:73:1 - TempChar:4:1 - TempKey :340705:1 - TempResult :2:2 - TempNum:2023:2 - TempChar:Ê4:2 - TempKey :2875:2 - TempResult :Ê2:3 - TempNum:763:3 - TempChar:L4:3 - TempKey :397585:3 - TempResult :ÊL2:4 - TempNum:1873:4 - TempChar:»4:4 - TempKey :288205:4 - TempResult :ÊL»2:5 - TempNum:343:5 - TempChar:"4:5 - TempKey :650855:5 - TempResult :ÊL»"2:6 - TempNum:1873:6 - TempChar:»4:6 - TempKey :369515:6 - TempResult :ÊL»"»2:7 - TempNum:1963:7 - TempChar:Ä4:7 - TempKey :515185:7 - TempResult :ÊL»"»Ä2:8 - TempNum:1283:8 - TempChar:€4:8 - TempKey :590455:8 - TempResult :ÊL»"»Ä€2:9 - TempNum:1803:9 - TempChar:´4:9 - TempKey :331885:9 - TempResult :ÊL»"»Ä€´2:10 - TempNum:2063:10 - TempChar:Î4:10 - TempKey :356575:10 - TempResult :ÊL»"»Ä€´Î1:177402:1 - TempNum:223:1 - TempChar:4:1 - TempKey :357055:1 - TempResult :2:2 - TempNum:2023:2 - TempChar:Ê4:2 - TempKey :474305:2 - TempResult :Ê2:3 - TempNum:2463:3 - TempChar:ö4:3 - TempKey :195315:3 - TempResult :Êö2:4 - TempNum:1083:4 - TempChar:l4:4 - TempKey :436905:4 - TempResult :Êöl2:5 - TempNum:2503:5 - TempChar:ú4:5 - TempKey :55235:5 - TempResult :Êölú2:6 - TempNum:843:6 - TempChar:T4:6 - TempKey :215305:6 - TempResult :ÊölúT2:7 - TempNum:13:7 - TempChar:4:7 - TempKey :533105:7 - TempResult :ÊölúT2:8 - TempNum:1563:8 - TempChar:œ4:8 - TempKey :608175:8 - TempResult :ÊölúTœ2:9 - TempNum:1623:9 - TempChar:¢4:9 - TempKey :277665:9 - TempResult :ÊölúTœ¢1:177402:1 - TempNum:223:1 - TempChar:4:1 - TempKey :357055:1 - TempResult :2:2 - TempNum:2193:2 - TempChar:Û4:2 - TempKey :492835:2 - TempResult :Û[B]1:177402:1 - TempNum:1173:1 - TempChar:u4:1 - TempKey :460605:1 - TempResult :u2:2 - TempNum:1303:2 - TempChar:‚4:2 - TempKey :541655:2 - TempResult :u‚2:3 - TempNum:2263:3 - TempChar:â4:3 - TempKey :305705:3 - TempResult :u‚â2:4 - TempNum:693:4 - TempChar:E4:4 - TempKey :630425:4 - TempResult :u‚âE2:5 - TempNum:1943:5 - TempChar:Â4:5 - TempKey :116355:5 - TempResult :u‚âEÂ[COLOR=red]2:6 - TempNum:03:6 - TempChar:4:6 - TempKey :232225:6 - TempResult :u‚âEÂ[/COLOR]2:7 - TempNum:1063:7 - TempChar:j4:7 - TempKey :525755:7 - TempResult :u‚âEÂ2:8 - TempNum:2523:8 - TempChar:ü4:8 - TempKey :567025:8 - TempResult :u‚âEÂ2:9 - TempNum:2373:9 - TempChar:í4:9 - TempKey :461585:9 - TempResult :u‚âEÂ[/B]1:177402:1 - TempNum:73:1 - TempChar:4:1 - TempKey :340705:1 - TempResult :2:2 - TempNum:2153:2 - TempChar:×4:2 - TempKey :17045:2 - TempResult :×2:3 - TempNum:713:3 - TempChar:G4:3 - TempKey :625945:3 - TempResult :×G2:4 - TempNum:1673:4 - TempChar:§4:4 - TempKey :253965:4 - TempResult :×G§2:5 - TempNum:423:5 - TempChar:*4:5 - TempKey :204215:5 - TempResult :×G§*2:6 - TempNum:33:6 - TempChar:4:6 - TempKey :637195:6 - TempResult :×G§*1:177402:1 - TempNum:63:1 - TempChar:4:1 - TempKey :339615:1 - TempResult :2:2 - TempNum:2143:2 - TempChar:Ö4:2 - TempKey :552505:2 - TempResult :Ö2:3 - TempNum:1463:3 - TempChar:’4:3 - TempKey :90435:3 - TempResult :Ö’2:4 - TempNum:1033:4 - TempChar:g4:4 - TempKey :140655:4 - TempResult :Ö’g2:5 - TempNum:1273:5 - TempChar:4:5 - TempKey :397915:5 - TempResult :Ö’g2:6 - TempNum:2073:6 - TempChar:Ï4:6 - TempKey :345975:6 - TempResult :Ö’gÏ2:7 - TempNum:2003:7 - TempChar:È4:7 - TempKey :575125:7 - TempResult :Ö’gÏÈ2:8 - TempNum:2053:8 - TempChar:Í4:8 - TempKey :654245:8 - TempResult :Ö’gÏÈÍ2:9 - TempNum:1763:9 - TempChar:°4:9 - TempKey :71675:9 - TempResult :Ö’gÏÈÍ°2:10 - TempNum:803:10 - TempChar:P4:10 - TempKey :36825:10 - TempResult :Ö’gÏÈÍ°P1:177402:1 - TempNum:123:1 - TempChar: 4:1 - TempKey :346155:1 - TempResult : 2:2 - TempNum:2333:2 - TempChar:é4:2 - TempKey :630715:2 - TempResult : é2:3 - TempNum:1513:3 - TempChar:—4:3 - TempKey :101095:3 - TempResult : é—2:4 - TempNum:833:4 - TempChar:S4:4 - TempKey :625435:4 - TempResult : é—S2:5 - TempNum:1573:5 - TempChar:4:5 - TempKey :187475:5 - TempResult : é—S2:6 - TempNum:633:6 - TempChar:?4:6 - TempKey :188655:6 - TempResult : é—S?2:7 - TempNum:383:7 - TempChar:&4:7 - TempKey :290025:7 - TempResult : é—S?&INSERT INTO CLI_Clientes (nCLI_Codigo, nCLI_NumeroCartao, sCLI_RazaoSocial, nCLI_Desconto, sCLI_Logradouro, sCLI_Numero, sCLI_Complemento, sCLI_Bairro, sCLI_Cidade, sCLI_Estado, sCLI_Cep, sCLI_Pais, sCLI_StatusFinanceiro, sCLI_StatusCadastro) VALUES (26112, 0, 'É6Y÷A—Çó´ ', 0, '¥÷9žÌK_v_@3', '}', 'Ó-¨Âç''', 'ÊL»"»Ä€´Î', 'ÊölúTœ¢', 'Û', 'u‚âE Microsoft OLE DB Provider for ODBC Drivers error '80040e14' [Microsoft][ODBC Microsoft Access Driver] Syntax error in string in query expression ''u‚âEÂ'. /evento/fonte/gravacriptografado.asp, line 69

Compartilhar este post


Link para o post
Compartilhar em outros sites

No post anterior tentei colocar em outra cor mais esqueci que dentro do CODE ele não aceita.O trecho que verifiquei o problema é2:6 - TempNum:03:6 - TempChar:4:6 - TempKey :232225:6 - TempResult :u‚âEÂA varivel TempChar está vazia e dai em dianta não aparece os demais caracteres

Compartilhar este post


Link para o post
Compartilhar em outros sites

No post anterior tentei colocar em outra cor mais esqueci que dentro do CODE ele não aceita.

O trecho que verifiquei o problema é

2:6 - TempNum:0

3:6 - TempChar:

4:6 - TempKey :23222

5:6 - TempResult :u‚âEÂ

 

A varivel TempChar está vazia e dai em dianta não aparece os demais caracteres

<{POST_SNAPBACK}>

Lembra quando eu falei do problema do Enter??? pois é... pode acontecer o mesmo só que com o char(0) (que significa fim de string).

 

Tenta fazer o mesmo que eu tinha falado antes só que para o char(0) em vez de para o Enter. Daí vai ficar assim:

variavel = replace(origem,chr(0),"@@char0@@")
Não custa tentar. Já que esse problema tá muito estranho. Testae...

Compartilhar este post


Link para o post
Compartilhar em outros sites

aeeeeee !!!!!funciono sua dica micox !!!!!!!!gravo tudo agorasó alguns caracteres não estão sendo descriptografados, vo tenta descobri o porque agoravaleu galera pela ajuda !!!!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

aeeeeee !!!!!

funciono sua dica micox !!!!!!!!

gravo tudo agora

só alguns caracteres não estão sendo descriptografados, vo tenta descobri o porque agora

 

valeu galera pela ajuda !!!!!!

<{POST_SNAPBACK}>

Uts... até que enfim. essa tava difícil..hhehe

Compartilhar este post


Link para o post
Compartilhar em outros sites

só to tentando acha o valor de char(0) mais não to achando, qual seria ?preciso sabe pra coloca na hora que precisa desciptografa.

Compartilhar este post


Link para o post
Compartilhar em outros sites

rs...quando tudo parecia resolvido...agora o problema é no hora de descriptografa, o char(0) é nulo e não estou conseguindo descriptografa o campo que tem char(0), tá complicada a coisa...

Compartilhar este post


Link para o post
Compartilhar em outros sites

rs...

quando tudo parecia resolvido...

agora o problema é no hora de descriptografa, o char(0) é nulo e não estou conseguindo descriptografa o campo que tem char(0), tá complicada a coisa...

<{POST_SNAPBACK}>

é o seguinte: na hora de criptografar, tudo que for char(0) vai ser substituido por @@char0@@. daí na hora da volta, eu acho que você tem que transformar o @@char0@@ em char(0) de novo.

POde ser que talvez de erro e finalize sua string. tenta aí e fala o que acontece pra gente ver.

Compartilhar este post


Link para o post
Compartilhar em outros sites

eu também pensei que fosse só faze isso mais deu erro, o mesmo erro da criptografia para sempre que tem chr(0), existe algum valor que posso utilizar ao invés dele ? tentei coloca "Null" mais não aceito

Compartilhar este post


Link para o post
Compartilhar em outros sites

eu também pensei que fosse só faze isso mais deu erro, o mesmo erro da criptografia para sempre que tem chr(0), existe algum valor que posso utilizar ao invés dele ? tentei coloca "Null" mais não aceito

<{POST_SNAPBACK}>

Então vai ficar f*** cara. por que tipo: se você colocar chr(0) em qualquer string do mundo. você vai finalizar ela. Então o jeito certo é mudar sua rotina de criptografia para que não gere de forma alguma o chr(0).

Refazer ela para não gerar o chr(0) na sua função...

Compartilhar este post


Link para o post
Compartilhar em outros sites

nossa me ferrei então... rs

<{POST_SNAPBACK}>

Faz o seguinte: tenta retirar só essa parte do seu código de criptografia, pois é ele que gera o chr(0)

TempChar = Chr(TempNum)
Poruqe se alguma conta do TempNum dá o resultado 'zero', ele tenta transformar isso aí em string, daí m***** tudo porque "chr de zero" é "fim de stirng", mas se você pegar o número seco e jogar na string acho que dá beleza. Mas não sei se ficaria bom

TEsta aí...

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.