Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 20
  1. #1
    Utente di HTML.it
    Registrato dal
    Apr 2008
    Messaggi
    155

    somma e sottrazione con il database

    ciao a tutti, ho un problema con le seguenti 3 pagine..allora nella prima compilo un semplice form che manda i dati alla seconda pagina che li invia al database..a questo punto tramite un redirect alla terza pagina...e qui nascino i problemi...a questa terza pagina gli passo dei valori tramite query ( ho provato a faglieli stamapare con un response.write e me li stampa correttamente).



    PAGINA 1

    <%@LANGUAGE="VBSCRIPT"%>
    <html>
    <head>
    <title>Sta Solution - Inserimento</title>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    </head>
    <body bgcolor="#FFFFFF">
    <table width="755" border="0" align="center">
    <tr align="center">
    <td colspan="2">[img]logo.jpg[/img]</td>
    </tr>
    <tr align="center" valign="top">
    <td colspan="2">
    <table border="0">
    <tr>
    <td height="15" colspan="3" bgcolor="E4E4E4" width="755">
    <table border="0" align="right">
    <tr>
    <td align="right">
    <a href="trunkstock_attuati.asp">
    <font color="#006633" size="+1">
    .:indietro:.
    </font>
    </a>
    </td>
    </tr>
    </table>
    </td>
    </tr>
    <tr>
    <td colspan="3" align="center"><font color="#006633">Inserimento</font></td>
    </tr>
    <tr>
    <td align="center" width="100%">
    <form action="inserimento_attuati.asp" method="post" name="inserimento">
    <table border="0" width="100%">
    <tr>
    <td colspan="2">
    <input type="text" name="SR">SR/Delivery No.
    </td>
    </tr>
    <tr>
    <td colspan="2">
    <select name="cod_parte" onChange="MM_jumpMenu('parent',this,0)">
    <%
    Set Conn = Server.CreateObject("ADODB.Connection")
    conn.open "provider=microsoft.jet.oledb.4.0; data source="&server.MapPath("mdb-database/trunkstock.mdb")
    %>
    <%
    SQL = "Select * FROM T_PARTI_ATTUATI ORDER BY cod_parte "
    Set objRS = Server.CreateObject("ADODB.Recordset")
    objRS.Open SQL, Conn
    Do While Not objRS.Eof
    Response.write "<option value = " & objRS("cod_parte") & ">" & objRS("cod_parte") & "</option>"
    objRS.MoveNext
    Loop
    objRS.Close
    Set objRS = Nothing
    Conn.Close
    Set Conn = Nothing
    %>
    </select>Codice parte
    </td>
    </tr>
    <tr>
    <td colspan="2">
    <input type="text" name="quantita">Quantità
    </td>
    </tr>
    <tr>
    <td width="100">
    <input type="radio" name="scelta" value="1">Carico
    </td>
    <td>
    <input type="radio" name="scelta" value="0">Scarico
    </td>
    </tr>
    <tr>
    <td colspan="2"><input type="submit" name="invia" value="Inserisci"></td>
    </tr>

    </table>
    </form>
    </td>
    </tr>
    </table>
    </td>
    </tr>
    <tr valign="bottom" align="center">
    <td colspan="2">
    <hr size="1" noshade width="100%" align="center">
    </td>
    </tr>
    <tr valign="bottom" align="center">
    <td colspan="2">
    <font face="Arial, Helvetica, sans-serif" size="2" color="#003333">
    Viale Europa, 35 - 20047 BRUGHERIO (MI) - Tel/Fax +39.039.87.05.25</font>




    <font face="Arial, Helvetica, sans-serif" size="2" color="#003333">
    per ogni richiesta/informazione:
    info@stasolution.it</font>
    </td>
    </tr>
    <tr valign="bottom" align="center">
    <td colspan="2">
    <hr size="1" noshade width="100%" align="center">
    </td>
    </tr>
    </table>


    </p>
    </body>
    </html>


    PAGINA 2

    <%@LANGUAGE="VBSCRIPT"%>
    <html>
    <head>
    <title>Documento senza titolo</title>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    </head>

    <body>
    <%
    valore= Request.Form("scelta")
    quantita=Request.Form("quantita")
    cod_parte=Request.Form("cod_parte")
    Set conn=server.CreateObject("adodb.connection")
    conn.open "provider=microsoft.jet.oledb.4.0; data source="&server.MapPath("mdb-database/trunkstock.mdb")
    set rs =server.CreateObject("adodb.recordset")
    rs.open "T_RICERCA", conn,3,3
    rs.addnew
    rs("SR")=request.form("SR")
    rs("part_number")=request.form("cod_parte")
    rs("quantita") =request.Form("quantita")
    rs.update
    rs.close
    set rs=nothing
    conn.close
    set conn=nothing
    response.redirect("modifica_parte.asp?valore="&val ore & "&quantita="&quantita & "&cod_parte="&cod_parte)
    %>
    </body>
    </html>

    Ora con questi valori che gli passo (valore, quantità e cod_parte) vorrei che se la variabile "valore" assume valore=1 il numero contenuto nella variabile "quantita" venga sommato al valore contenuto nella cella "quantita" presente nel database o se il valore contenuto nella variabile "valore" assume valore=0 il valore contenuto nella variabile "quantita" venga sottratto
    al valore contenuto nella cella "quantita" presente nel database

    PAGINA 3

    <%@LANGUAGE="VBSCRIPT"%>
    <html>
    <head>
    <title>pippo</title>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    </head>

    <body>
    <%
    valore=request.querystring("valore")
    quantita=request.QueryString("quantita")
    cod_parte=Request.QueryString("cod_parte")
    Set conn=server.CreateObject("adodb.connection")
    conn.open "provider=microsoft.jet.oledb.4.0; data source="&server.MapPath("mdb-database/trunkstock.mdb")
    sql="SELECT quantita FROM T_PARTI WHERE cod_parte="& cod_parte &""
    set rs =server.CreateObject("adodb.recordset")
    rs.open sql, conn,3,3
    Response.Write(valore)
    Response.Write(quantita)
    Response.Write(cod_parte)
    do while not rs.eof
    IF valore=1 then
    quantita1=rs("quantita")+quantita
    rs("quantita")=quantita1
    rs.update
    else
    quantita1=rs("quantita")-quantita
    rs("quantita")=quantita1
    rs.update
    end if
    rs.movenext
    loop
    rs.close
    set rs=nothing
    conn.close
    set conn=nothing
    Response.Write(quantita1)
    'Response.redirect("trunkstock.asp")
    %>
    </body>
    </html>
    ho provato a far così, nn mi da erorri xò nn mi cambia il valore...ho provato a fagli stampare con response.write la variabile quantita1 ma nn mi scrive nulla...

    qualcuno può aiutarmi?


    ciao



    D.

  2. #2
    prima fai

    IF VALORE=0 THEN Quantita=-Quantita

    poi esegui una

    UPDATE T_PARTI SET quantita=quantita + " & quantita & " WHERE cod_parte= " & cod_parte & ""


  3. #3
    Utente di HTML.it
    Registrato dal
    Apr 2008
    Messaggi
    155
    mi puoi fare l'esempio pratico dove inserire le 2 righe di codice? grazie!!

  4. #4
    Utente di HTML.it
    Registrato dal
    Apr 2008
    Messaggi
    155
    ho messo il codice così:


    <%
    valore=request.querystring("valore")
    quantita=request.QueryString("quantita")
    cod_parte=Request.QueryString("cod_parte")
    Set conn=server.CreateObject("adodb.connection")
    conn.open "provider=microsoft.jet.oledb.4.0; data source="&server.MapPath("mdb-database/trunkstock.mdb")
    sql="SELECT quantita FROM T_PARTI_ATTUATI WHERE cod_parte="& cod_parte &""
    set rs =server.CreateObject("adodb.recordset")
    rs.open sql, conn,3,3


    do while not rs.eof
    IF valore=0 THEN quantita=-quantita
    quantita1=rs("quantita")+quantita
    rs("quantita")=quantita1
    UPDATE "T_PARTI SET quantita=quantita + " & quantita & " WHERE cod_parte= " & cod_parte & ""
    else
    quantita1=rs("quantita")+quantita
    rs("quantita")=quantita1
    UPDATE "T_PARTI SET quantita=quantita + " & quantita & " WHERE cod_parte= " & cod_parte & ""
    end if
    rs.movenext
    loop
    rs.close
    set rs=nothing
    conn.close
    set conn=nothing
    'Response.Write(quantita1)
    Response.redirect("trunkstock_attuati.asp")
    %>
    mi da il seguente errore:


    Microsoft VBScript compilation error '800a03fb'

    Expected 'Loop'

    /modifica_parte.asp, line 26

    else
    ^


    la linea 26 è:


    quantita1=rs("quantita")+quantita

  5. #5
    l'update è secca. togli select, loop, e tutto il resto

    lascia la valorizzazione delle variabili e le mie due righe

  6. #6
    Utente di HTML.it
    Registrato dal
    Apr 2008
    Messaggi
    155
    scusa mi potresti dire esattamente cosa togliere e cosa lasciare x favore..grazie


    D.

  7. #7
    Utente di HTML.it
    Registrato dal
    Apr 2008
    Messaggi
    155
    UP!


    Qualcuno riesce a darmi una mano? nn riesco a uscirne...

  8. #8
    ma dov'è la difficoltà? ti ho dato tutti gli elementi!

    1 - leggi le request
    2 - sistemi la quantità con la mia IF
    3 - esegui l'UPDATE

    fine. è facile, dai

  9. #9
    Utente di HTML.it
    Registrato dal
    Apr 2008
    Messaggi
    155
    allora io ho fatto così:


    <%
    valore=request.querystring("valore")
    quantita=request.QueryString("quantita")
    cod_parte=Request.QueryString("cod_parte")
    Set conn=server.CreateObject("adodb.connection")
    conn.open "provider=microsoft.jet.oledb.4.0; data source="&server.MapPath("mdb-database/trunkstock.mdb")
    set rs =server.CreateObject("adodb.recordset")
    rs.open sql, conn,3,3

    IF valore=0 THEN quantita=-quantita
    ELSE
    quantita=quantita

    UPDATE "T_PARTI SET quantita=quantita + " & quantita & " WHERE cod_parte= " & cod_parte & ""
    rs.close
    set rs=nothing
    conn.close
    set conn=nothing
    Response.Write(quantita1)
    'Response.redirect("trunkstock_attuati.asp")
    %>
    e mi da il seguente errore:

    Microsoft VBScript compilation error '800a03ea'

    Syntax error

    /modifica_parte_attuati.asp, line 19

    ELSE
    ^


    la linea 19 è:
    IF valore=0 THEN quantita=-quantita

    dove sbaglio?

  10. #10
    io ho scritto altro. la ELSE dove l'hai presa?

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.