Visualizzazione dei risultati da 1 a 7 su 7

Discussione: update db

  1. #1
    Utente di HTML.it
    Registrato dal
    Jan 2002
    Messaggi
    220

    update db

    Ciao a tutti,
    ho una db composto da una tabella contenente 6 righe con 3 campi (id, rate, tendeza) volevo fare una pagina per modificare questo db e ho creato quindi una form dove poter inserire i dati come action della form rimando a questa pagina asp dove cerco di inserire i dati:
    <%
    rate1 = request.Form("1_a")
    tend1 = request.Form("1_b")
    rate2 = request.Form("2_a")
    tend2 = request.Form("2_b")
    rate3 = request.Form("3_a")
    tend3 = request.Form("3_b")
    rate4 = request.Form("4_a")
    tend4 = request.Form("4_b")
    rate5 = request.Form("5_a")
    tend5 = request.Form("5_b")
    rate6 = request.Form("6_a")
    tend6 = request.Form("6_b")
    Dim Id
    For Id=1 to 6
    raten= "rate"&Id
    tendn= "tend"&Id
    strsql = "UPDATE tabella set id ='"&Id&"', rates = '"&raten&"', tendenza = '"&tendn&"' where id="&Id
    Set objConn = Server.CreateObject("ADODB.Connection")
    dsnpath = "DRIVER={MICROSOFT ACCESS DRIVER (*.mdb)}; "
    dsnpath = dsnpath & "DBQ=" & Server.MapPath("int.mdb")
    objConn.Open dsnpath
    objConn.Execute strsql
    Next
    %>

    Ho cercato di inserirli con un ciclo in modo che riesegua l'azione per le 6 volte in base all'id
    La cosa funziona ma nel db se vado poi a controllare che valori sono stati inseriti trovo:
    rate1, tend1
    rate2, tend2
    rate3, tend3
    ecc...

    Sbaglio qualcosa evidentemente ma non riesco a trovare cosa... :P

    Qualcuno mi può aiutare?

  2. #2
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    codice:
    raten = request.Form(id&"_a") 
    tendn = request.Form(id&"_b")
    Roby

  3. #3
    Utente di HTML.it
    Registrato dal
    Jan 2002
    Messaggi
    220
    Grazie Robyyyyyyyyy,

    dovevo essere cieco a non vedere che era li il problema.... :P

  4. #4
    Utente di HTML.it
    Registrato dal
    Jan 2002
    Messaggi
    220
    Mi viene in mente ora che non ho inserito nessun controllo su raten o tendn e se non si mette un valore nella form la pagina asp da errore...

    Allora ho pensato di modificare così...

    <%
    Dim Id
    For Id=1 to 6
    raten = request.Form(id&"_a")
    tendn = request.Form(id&"_b")

    If raten Or tendn = null Then
    ... qui vorrei far apparire un simil alert che chiede di inserire un valore valido... e torna alla form...

    strsql = "UPDATE tabella set id ='"&Id&"', rates = '"&raten&"', tendenza = '"&tendn&"' where id="&Id
    Set objConn = Server.CreateObject("ADODB.Connection")
    dsnpath = "DRIVER={MICROSOFT ACCESS DRIVER (*.mdb)}; "
    dsnpath = dsnpath & "DBQ=" & Server.MapPath("int.mdb")
    objConn.Open dsnpath
    objConn.Execute strsql
    End if
    Next
    %>

  5. #5
    Utente di HTML.it
    Registrato dal
    Jan 2002
    Messaggi
    220
    Ok... era un erroraccio grossolano... è bastato modificare in:

    If raten="" OR tendn="" Then
    Response.Redirect("form.asp")

    E ora se non compilo uno dei campi in maniera approriata si torna alla form...

    Ora però mi si pone un altro problema... il ritorno alla form va bene ma vorrei recuperare i dati che uno aveva gia meso in modo da non doverli reinserire...

    Qlc mi può dare una spintarella verso la soluzione? :P

  6. #6
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    codice:
    If raten="" OR tendn="" Then 
    Response.write("Torna indietro") 
    else
    ....
    end if
    Roby

  7. #7
    Utente di HTML.it
    Registrato dal
    Jan 2002
    Messaggi
    220
    Grazie ancora... l'accrocchio funziona benissimo stavo cercando appunto se il Response.Redirect non potesse usare la chache di navigazione del browser...

    Così col java lo si fa... adesso testo se funziona con tutti i vari browser... :P

    Sto già pensando a rifare tutto daccapo per pensare a una soluzione migliore per fare il tutto... se qlc avesse voglia di dirmi a parole come è meglio impostare il tutto...

    In alternativa ho pensato di usare il redirect per aggiungere le variabili in fondo all'url e poi recuperarle nella form attraverso il querystring ma mi incasino col fatto che ho usato il ciclo di for per inserire nel db i dati...

    Mhmhmhmh mi serve un pò di tempo in più per rifletterci sopra...

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.