Visualizzazione dei risultati da 1 a 7 su 7

Discussione: aggiornamento database

  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2007
    Messaggi
    91

    aggiornamento database

    ho provato a modificare i campi di un database ma compare questo errore:

    Tipo di errore:
    Microsoft JET Database Engine (0x80004005)
    Per l'operazione è necessaria una query aggiornabile.
    disponibilita.asp, line 77


    questa è il codice:

    <%@ LANGUAGE="JScript" %>
    <% /* inserisco i dati ricevuti in un vettore */

    var prodottiordinati = new Array();
    var nrprodotti = 0;

    var e = new Enumerator(Request.Form);
    for (; !e.atEnd(); e.moveNext())
    {
    formItem = e.item();
    value = Request.Form(formItem);

    if(formItem.substr(0,3) == "qta")
    {
    if(value > 0)
    {
    prodottiordinati[nrprodotti] = new Array();
    prodottiordinati[nrprodotti]["idProdotto"] = formItem.substr(3,formItem.length);
    prodottiordinati[nrprodotti]["quantita"] = value;
    nrprodotti++;
    }
    }
    }

    /* Creo la connessione al database */

    var con;
    var sConString;
    var sSQLString;
    con = Server.CreateObject("ADODB.Connection");
    sConString = "Provider = Microsoft.Jet.OLEDB.4.0; "
    + "Data Source = " + Server.MapPath("./pasticceria.mdb");
    con.Mode = 3; //1 = adModeRead, 3 = adModeReadWrite
    con.Open(sConString);

    var rst, sql;
    rst = Server.CreateObject("ADODB.Recordset");

    var qta, qtadisponibile;
    var codicetabella = "";

    var procediconlordine = true;

    /* verifico che ci siano quantita disponibili sufficienti per tutti i prodotti ordinati */

    for(i=0; i < prodottiordinati.length; i++)
    {
    sql = "SELECT idProdotto, nomeProdotto, qtaDisponibile FROM prodotti WHERE idProdotto = " + prodottiordinati[i]["idProdotto"];
    rst.Open(sql, con, 0, 3); //0 = adOpenForwardOnly, 3 = AdLockReadOnly

    qta = prodottiordinati[i]["quantita"];
    qtadisponibile = rst.fields("qtaDisponibile").value;

    if(qtadisponibile < qta)
    {
    procediconlordine = false;

    codicetabella+=" <tr>\n";
    codicetabella+=" <td class=\"prodotto\">" + rst.fields("nomeProdotto").value + "</td>\n";
    codicetabella+=" <td class=\"numero\">" + qtadisponibile + "</td>\n";
    codicetabella+=" <td class=\"numero\">" + qta + "</td>\n";
    codicetabella+=" </tr>\n";
    }
    rst.Close();
    }

    /* se ci sono procedo con l'aggiornamento del database */


    if(procediconlordine == true)
    {
    for(i=0; i < prodottiordinati.length; i++)
    {
    qta = prodottiordinati[i]["quantita"];

    sql = "UPDATE prodotti SET qtaDisponibile = qtaDisponibile - " + qta + " WHERE idProdotto = " + prodottiordinati[i]["idProdotto"];
    con.Execute(sql);
    }

    }

    con.Close();
    rst = null;
    con = null;

    /* se non ci sono segnalo all'utente i prodotti non disponibili */

    %>

    <html>
    <head>
    <meta http-equiv=Content-Type content="text/html; charset=iso-8859-1" />
    <link rel="stylesheet" type="text/css" href="style.css" />
    <title>
    Pasticceria - Prodotti Non Disponibili
    </title>
    </head>
    <body>


    <%
    if(procediconlordine == false)
    {
    %>


    Siamo spiacenti, ma la quantit&aacute; di uno o pi&ugrave; prodotti da lei
    scelti non &eacute; al momento disponibile.


    <table class="tabella" align="center">
    <tr>
    <th>Prodotto</th><th>Disponibilit&agrave;</th><th>Ordinato</th>
    </tr>
    <% Response.write(codicetabella) %>
    </table>
    <table align=center ID="Table1">
    <tr>
    <td>


    <input type="button" value="Modifica Ordine" onClick="window.location='ordinazione.asp'" ID="Button1" NAME="Button1">
    <input type="button" value="Annulla Ordine" onClick="window.location='index.asp'" ID="Button2" NAME="Button2">
    </td>
    </tr>
    </table>


    <%} else {%>

    <h3> Ordinazione eseguita con successo!!!

    Grazie e arrivederci alla prossima ordinazione.
    </h3>


    Torna alla pagina iniziale
    <%
    }
    %>



    </body>
    </html>

    dov'è l'errore?

  2. #2
    cerca nel forum. se ne è parlato un miliardo di volte

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2007
    Messaggi
    91
    non ho trovato altre discussioni ocn questo tipo di errore :master:

  4. #4

  5. #5
    Utente di HTML.it
    Registrato dal
    Jun 2007
    Messaggi
    91
    Grazie! Io cercavo la stringa del codice errore x quello non ho trovato

  6. #6

  7. #7
    Utente di HTML.it
    Registrato dal
    Jun 2007
    Messaggi
    91
    Eh non sono molto pratica Grazie mille
    ora provo le soluzioni proposte

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 © 2026 vBulletin Solutions, Inc. All rights reserved.