Ir para conteúdo

POWERED BY:

Arquivado

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

rcdesign

Empaquei - Msg Erro

Recommended Posts

Pessoal, estou usando um script de cadastro pronto que baixei pelo scriptbrasil. Tudo funciona bem, inclusive já utilizei este mesmo script em outro site.O que está acontecendo é o seguinte.... Após fazer a consulta dos cadastros e listar os resultados, encontro o cadastro que eu quero alterar os dados e clico no link de alteração.... abre então o formulário de alteração com os dados deste cadastro, até aki tudo bem....Quando mando alterar recebo a seguinte mensagem de erro:

Microsoft OLE DB Provider for ODBC Drivers error '80040e10' [Microsoft][Driver ODBC para Microsoft Access] Parâmetros insuficientes. Eram esperados 1. /galeria/cadastro/atualizar_form.asp, line 88

A linha 88 é o comando de execução.....

<%' *** Update Record: construct a sql update statement and execute itIf (CStr(Request("MM_update")) <> "" And CStr(Request("MM_recordId")) <> "") Then  ' create the sql update statement  MM_editQuery = "update " & MM_editTable & " set "  For i = LBound(MM_fields) To UBound(MM_fields) Step 2    FormVal = MM_fields(i+1)    MM_typeArray = Split(MM_columns(i+1),",")    Delim = MM_typeArray(0)    If (Delim = "none") Then Delim = ""    AltVal = MM_typeArray(1)    If (AltVal = "none") Then AltVal = ""    EmptyVal = MM_typeArray(2)    If (EmptyVal = "none") Then EmptyVal = ""    If (FormVal = "") Then      FormVal = EmptyVal    Else      If (AltVal <> "") Then        FormVal = AltVal      ElseIf (Delim = "'") Then  ' escape quotes        FormVal = "'" & Replace(FormVal,"'","''") & "'"      Else        FormVal = Delim + FormVal + Delim      End If    End If    If (i <> LBound(MM_fields)) Then      MM_editQuery = MM_editQuery & ","    End If    MM_editQuery = MM_editQuery & MM_columns(i) & " = " & FormVal  Next  MM_editQuery = MM_editQuery & " where " & MM_editColumn & " = " & MM_recordId  If (Not MM_abortEdit) Then    ' execute the update    Set MM_editCmd = Server.CreateObject("ADODB.Command")    MM_editCmd.ActiveConnection = MM_editConnection    MM_editCmd.CommandText = MM_editQuery    MM_editCmd.Execute    MM_editCmd.ActiveConnection.Close    If (MM_editRedirectUrl <> "") Then      Response.Redirect(MM_editRedirectUrl)    End If  End IfEnd If%>

Já vi, revi, fiz e refiz.. e nada...... :) :) :)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Dá um

response.write MM_editQuery

E veja o que está faltando na SQL.

 

Valeu?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Faz assim:

 

  MM_editQuery = MM_editQuery & " where " & MM_editColumn & " = " & MM_recordId

 response.write MM_editQuery
'  If (Not MM_abortEdit) Then
'    ' execute the update
'    Set MM_editCmd = Server.CreateObject("ADODB.Command")
'    MM_editCmd.ActiveConnection = MM_editConnection
'    MM_editCmd.CommandText = MM_editQuery
'    MM_editCmd.Execute
'   MM_editCmd.ActiveConnection.Close

'    If (MM_editRedirectUrl <> "") Then
'      Response.Redirect(MM_editRedirectUrl)
'    End If
'  End If

 

Valeu?

Compartilhar este post


Link para o post
Compartilhar em outros sites

apareceu o seguinte:

update tbmusicos set nome = 'Acelone Pereira de Sousa Neto',sexo = 'Masculino',dtnasc = '12/2/1985',endereco = 'Rua Jose Ferreira da Rocha, 917 - Jardim Imperador',cidade = 'São Paulo',estado = 'SP',cep = '11.750-000',email = 'acelone@uol.com.br',ddd = '13',telefone = '3458-2170',intrumento1 = 'Compositor',outrosinstr = 'Vocal',estilo1 = 'Heavy Metal',outrosestilos = 'xx',formacao = 'xx',experiencia = 'xx',influencias = 'Guns''n Roses e Aerosmith',banda = 'xx',senha = 'gm2606',lembrete = 'xx' where cod = 3

Ou seja todas as informações que foram solicitadas na alteração........

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tente isso:

'    MM_editCmd.CommandText = MM_editQuery
MM_editCmd.Execute (MM_editQuery)

E veja se funciona.

Compartilhar este post


Link para o post
Compartilhar em outros sites

apareceu o seguinte:

update tbmusicos set nome = 'Acelone Pereira de Sousa Neto',sexo = 'Masculino',dtnasc = '12/2/1985',endereco = 'Rua Jose Ferreira da Rocha, 917 - Jardim Imperador',cidade = 'São Paulo',estado = 'SP',cep = '11.750-000',email = 'acelone@uol.com.br',ddd = '13',telefone = '3458-2170',intrumento1 = 'Compositor',outrosinstr = 'Vocal',estilo1 = 'Heavy Metal',outrosestilos = 'xx',formacao = 'xx',experiencia = 'xx',influencias = 'Guns''n Roses e Aerosmith',banda = 'xx',senha = 'gm2606',lembrete = 'xx' where cod = 3

Ou seja todas as informações que foram solicitadas na alteração........
Verifique esta aspa dupla de Guns"n: [ influencias = 'Guns''n Roses e Aerosmith' ] Acredito que esteja fechando a query antes do momento certo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Verifique esta aspa dupla de Guns"n: [ influencias = 'Guns''n Roses e Aerosmith' ] Acredito que esteja fechando a query antes do momento certo.

Para ter certeza quando pedi para atualizar alterei para Guns and Roses...mas não adiantou.... não era isso.

Compartilhar este post


Link para o post
Compartilhar em outros sites

e ja verificou os tipos de dados no banco? tipo, pode estar colocando txt em campo numero, etc...

Compartilhar este post


Link para o post
Compartilhar em outros sites

e ja verificou os tipos de dados no banco? tipo, pode estar colocando txt em campo numero, etc...

Com excessão do campo cod (autonumeração - chave primária) todos os campos são textos...

ae RC dá pra você me passar esse código?

Você quer o script original ou o meu código completo?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara tenho esse código:

	set diario = server.CreateObject("adodb.recordset")
diario.Open "Tabela",conn,adOpenDynamic,adLockOptimistic,adcmdtable

if p_existente = "" then
 diario.AddNew
else
 p_data = p_existente
 diario.Find "Codigo =" &cint(p_cod)
end if

diario("usuario") = cstr(p_username)
diario("data_ocorrencia") = cdate(p_data)
diario("pag_l_obras") = cstr(p_livro)
diario("data_insercao") = cdate(p_data_inser)
diario("ocorrencias") = cstr(p_ocorrencia)
diario("cod_obra") = cstr(p_cod_obra)

diario.Update
diario.Close

Tenta dar uma adaptada para seu caso.

QQ coisa grita ai.

 

 

Valeu?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu organizei as informações......Cara o problema deve ser no GUNS'......De uma olhada

update tbmusicos set nome = 'Acelone Pereira de Sousa Neto',sexo = 'Masculino',dtnasc = '12/2/1985',endereco = 'Rua Jose Ferreira da Rocha, 917 - Jardim Imperador',cidade = 'São Paulo',estado = 'SP',cep = '11.750-000',email = 'acelone@uol.com.br',ddd = '13',telefone = '3458-2170',intrumento1 = 'Compositor',outrosinstr = 'Vocal',estilo1 = 'Heavy Metal',outrosestilos = 'xx',formacao = 'xx',experiencia = 'xx',influencias = 'Gun'' Roses e Aerosmith',banda = 'xx',senha = 'gm2606',lembrete = 'xx'where cod = 3 

Tenta pegar este código e executar direto no Banco...Aliás.....Muda este tipo de Update, pois se um dia você for usar SQL terá problemas......

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara o problema deve ser no GUNS'......

O problema não é aí.... já tentei outras alterações com outros cadastros diferentes e a resposta de erro é sempre a mesma...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Salgado.... o problema de alterar/adaptar este seu código é que o script é muito diferente............

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pessoal, descobri o erro!!!!!!!!!!!!!!!!! era um maldito "s" na declaração de uma das variáveis........

Compartilhar este post


Link para o post
Compartilhar em outros sites

<%option explicit%>

Nele, quase 1 semana

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.