Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11

Discussione: Problema update

  1. #1

    Problema update

    Ho questo problema ma ho controllato e ricontrollato e mi sembra tutto ok.

    vi metto il codice della pagina che fa l'aggiornamento:
    ---------------
    MM_fieldsStr = "utente|value|notex|value|codtransizione|value|nom ex|value|cognomex|value|indirizzox|value|emailx|va lue|telefonox|value|orax|value|datax|value|modpag| value|totalex|value|statox|value"
    MM_columnsStr = "utente|none,none,NULL|notex|',none,''|codtransizi one|none,none,NULL|nomex|',none,''|cognomex|',none ,''|indirizzox|',none,''|emailx|',none,''|telefono x|',none,''|orax|',none,''|datax|',none,NULL|modpa g|',none,''|totalex|none,none,NULL|statox|',none,' '"
    ---------------

    e questo il response write del MM_editQuery:

    ---------------
    update transazioni set utente = 14380,notex = '',codtransizione = 120,nomex = 'Nicola',cognomex = 'Rossi',indirizzox = 'Via di prova, Milano MI Nazione:IT ',emailx = 'mail@mail.it',telefonox = '123456',orax = '11.38.17',datax = '01/03/2011',modpag = 'Test',totalex = 33,5,statox = 'I' where ID = 120
    Microsoft OLE DB Provider for ODBC Drivers error '80040e14'

    [Microsoft][ODBC Microsoft Access Driver] Syntax error in UPDATE statement.

    /admin/stato.asp, line 153
    ---------------

    non capisco quale è il problema. i permessi di scrittura sul db sono settati correttamente.
    please help

  2. #2
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    totalex = 33,5
    Se il campo è numerico, e sembra lo sia, al posto della virgola devi passare il punto nei decimali.

    Roby

  3. #3
    ah ecco cosa era arghhh. come posso passarlo con il punto ma poi nel db mantenere la virgola? grazieee

  4. #4
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Non ti deve interessare il db... Lascialo lavorare come gli piace.
    Devi fare una Replace()

    Roby

  5. #5
    ma il replace dove lo metto?

  6. #6
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Stai lavorando con dremaweaver mi pare quindi non saprei.
    In teoria sul singolo valore dovresti fare:
    codice:
    valore = replace(valore,",",".")
    Roby

  7. #7
    sisi uso dreamweaver. solo che nn capisco in che punto devo mettere il replace. devo metterlo dove richiamo il valore?

  8. #8
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Prima di eseguire la query di UPDATE.
    Recuperi il valore e prima di inserirlo nella query lo "modifichi".

    Roby

  9. #9
    devi metterlo *dopo* la formazione di totalex

    totalex = replace(totalex, ",", ".")


  10. #10
    Perdonami ti posto la query perchè sto impazzendo. mi puoi dire dove inserirlo e come soprattutti grazie

    -------------
    <%
    ' *** Update Record: set variables

    If (CStr(Request("MM_update")) = "form1" And CStr(Request("MM_recordId")) <> "") Then

    MM_editConnection = MM_datacat20u_STRING
    MM_editTable = "transazioni"
    MM_editColumn = "ID"
    MM_recordId = "" + Request.Form("MM_recordId") + ""
    MM_editRedirectUrl = "transazioni2.asp"
    MM_fieldsStr = "utente|value|notex|value|codtransizione|value|nom ex|value|cognomex|value|indirizzox|value|emailx|va lue|telefonox|value|orax|value|datax|value|modpag| value|totalex|value|statox|value"
    MM_columnsStr = "utente|none,none,NULL|notex|',none,''|codtransizi one|none,none,NULL|nomex|',none,''|cognomex|',none ,''|indirizzox|',none,''|emailx|',none,''|telefono x|',none,''|orax|',none,''|datax|',none,NULL|modpa g|',none,''|totalex|none,none,NULL|statox|',none,' '"

    ' create the MM_fields and MM_columns arrays
    MM_fields = Split(MM_fieldsStr, "|")
    MM_columns = Split(MM_columnsStr, "|")

    ' set the form values
    For MM_i = LBound(MM_fields) To UBound(MM_fields) Step 2
    MM_fields(MM_i+1) = CStr(Request.Form(MM_fields(MM_i)))
    Next

    ' append the query string to the redirect URL
    If (MM_editRedirectUrl <> "" And Request.QueryString <> "") Then
    If (InStr(1, MM_editRedirectUrl, "?", vbTextCompare) = 0 And Request.QueryString <> "") Then
    MM_editRedirectUrl = MM_editRedirectUrl & "?" & Request.QueryString
    Else
    MM_editRedirectUrl = MM_editRedirectUrl & "&" & Request.QueryString
    End If
    End If

    End If
    %>
    <%
    ' *** Update Record: construct a sql update statement and execute it

    If (CStr(Request("MM_update")) <> "" And CStr(Request("MM_recordId")) <> "") Then

    ' create the sql update statement
    MM_editQuery = "update " & MM_editTable & " set "
    For MM_i = LBound(MM_fields) To UBound(MM_fields) Step 2
    MM_formVal = MM_fields(MM_i+1)
    MM_typeArray = Split(MM_columns(MM_i+1),",")
    MM_delim = MM_typeArray(0)
    If (MM_delim = "none") Then MM_delim = ""
    MM_altVal = MM_typeArray(1)
    If (MM_altVal = "none") Then MM_altVal = ""
    MM_emptyVal = MM_typeArray(2)
    If (MM_emptyVal = "none") Then MM_emptyVal = ""
    If (MM_formVal = "") Then
    MM_formVal = MM_emptyVal
    Else
    If (MM_altVal <> "") Then
    MM_formVal = MM_altVal
    ElseIf (MM_delim = "'") Then ' escape quotes
    MM_formVal = "'" & Replace(MM_formVal,"'","''") & "'"
    Else
    MM_formVal = MM_delim + MM_formVal + MM_delim
    End If
    End If
    If (MM_i <> LBound(MM_fields)) Then
    MM_editQuery = MM_editQuery & ","
    End If
    MM_editQuery = MM_editQuery & MM_columns(MM_i) & " = " & MM_formVal
    Next
    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

    End If
    %>

    -------------

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.