Visualizzazione dei risultati da 1 a 8 su 8

Discussione: dati di form con ciclo

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

    dati di form con ciclo

    ciao!

    ho creato una pagina con un form cosi':

    <%
    sql="select * from CATEGORIA"
    aprirs sql
    do until rs.eof
    %>
    <form name="scontocat" action="scontacat.asp" method="get">
    <table border="1">
    <tr>
    <td>&id_cl=<%=request("id_cl")%>"><%=rs("categoria")%></td>
    <td>Sconto:<input type="text" name="scontocat" />
    <input type="hidden" name="id_cat" value="<%=rs("id_cat")%>" /></td>
    <td><input type="submit" value="Invia" /></td>
    </tr>
    </table>
    <%rs.movenext
    loop%>
    </form>

    per ho bisogno che mi "spedisca" nella pagina seguente dove vado a d inerire i dati che ho scelto nel db SOLO i dati che io ho scelto...invece mi traporta tutti i dati che vengono stampati nelk ciclo do until.

  2. #2

    Re: dati di form con ciclo

    Se ho capito il problema dovresti modificare il nome del form
    Prova a inserire le modifiche in grassetto

    codice:
    <%
    iform=0
    sql="select * from CATEGORIA"
    aprirs sql
    do until rs.eof
    iform=iform+1
    %>
    <form name="scontocat<%=iform%>" action="scontacat.asp" method="get">
    <table border="1">
    <tr>
    <td>&id_cl=<%=request("id_cl")%>"><%=rs("categoria")%></td>
    <td>Sconto:<input type="text" name="scontocat" />
    <input type="hidden" name="id_cat" value="<%=rs("id_cat")%>" /></td>
    <td><input type="submit" value="Invia" /></td>
    </tr>
    </table>
    <%rs.movenext
    loop%>
    </form>

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2007
    Messaggi
    461
    non cambia nulla!comunque mi sembra strana sta cosa...in altre pagine ho inserito procedimenti simili e funziona tutto...

  4. #4
    Utente di HTML.it
    Registrato dal
    Jun 2007
    Messaggi
    461
    niente sono iuscito a sistemare!
    alla fine era la posizione della chiusura del form che doveva essere dentro il ciclo e non fuori...ma'!vabbè...l'imposrtante è che funzioni..
    comunque nella pagina dopo il codice è cosi:

    <%
    sql="SELECT * FROM PRODOTTO WHERE ID_CAT='"&request("id_cat")&"'"
    aprirs sql
    do until rs.eof
    sql2="INSERT INTO SCONTI(ID_PR, ID_CL, SCONTO) VALUES('" &rs("id_pr") & "', '" & request("id_cl") & "', '"&request("scontocat")&"')"
    conn.execute(sql2)
    rs.movenext
    loop
    chiudi
    %>

    pero' questo deve accadere SOLO se non esista gia un effettivo sconto a tutti o anche a un solo prodotto a cui vado a dare uno sconto...in tal caso devo solo aggiornare quindi userei una query cosi:

    sql2="UPDATE SCONTI SET SCONTO='"&request("scontocat")&"'"
    conn.execute(sql2)

    dove ID_CL e ID_PR non li vado a toccare perche sono gli stessi....

    il mio problema è creare la condizione per far si che cio avvenga correttamente.

  5. #5
    Prova

    sql2="UPDATE SCONTI SET SCONTO='"&request("scontocat")&"'"
    sql2=sql2 & " where ID_PR=" & rs("id_pr")
    sql2=sql2 & " and ID_CL=" & request("id_cl")
    sql2=sql2 & " and sconto<>''"
    conn.execute(sql2)

  6. #6
    Utente di HTML.it
    Registrato dal
    Jun 2007
    Messaggi
    461
    ok pero non so come strutturare la condizione...cioè in parole povere sarebbe:
    se nella tabella SCONTI sono presenti record con ID_CL e ID_PR uguali a quelli richiesti per inserire lo SCONTO nuovo allora AGGIORNA il reocrd e non crearne un'altro, in caso contrario crearne uno nuovo.

  7. #7
    La condizione la deci mettere nella prima query
    poi cicli e applichi lo sconto

    codice:
    <%
    sql="SELECT * FROM PRODOTTO WHERE ID_CAT='"&request("id_cat")&"'"
    sql=sql & " and ID_PR=" & rs("id_pr")
    sql=sql & " and ID_CL=" & request("id_cl")
    sql=sql & " and sconto<>''"
    
    aprirs sql
    do until rs.eof
    sql2="UPDATE SCONTI SET SCONTO='"&request("scontocat")&"'"
    sql2=sql2 & " where ID_PR=" & rs("id_pr")
    sql2=sql2 & " and ID_CL=" & request("id_cl")
    sql2=sql2 & " and sconto<>''"
    
    conn.execute(sql2)
    rs.movenext
    loop
    chiudi
    %>

  8. #8
    Utente di HTML.it
    Registrato dal
    Jun 2007
    Messaggi
    461
    ok drovei essere riuscito da solo...lo provato e a quanto pare funziona...comunque il codice è questo:

    <%
    sql="SELECT * FROM PRODOTTO WHERE ID_CAT='"&request("id_cat")&"'"
    aprirs sql
    do until rs.eof
    strpr=rs("id_pr")
    arrpr=split(strpr,",")
    rs.movenext
    loop
    sqls="SELECT * FROM SCONTI WHERE ID_PR='"&arrpr(i)&"' AND ID_CL='"&request("id_cl")&"'"
    aprirs sqls
    if rs.eof then
    sql="SELECT * FROM PRODOTTO WHERE ID_CAT='"&request("id_cat")&"'"
    aprirs sql
    do until rs.eof
    sql2="INSERT INTO SCONTI(ID_PR, ID_CL, SCONTO) VALUES('" &rs("id_pr") & "', '" & request("id_cl") & "', '"&request("scontocat")&"')"
    conn.execute(sql2)
    rs.movenext
    loop
    else
    sql="SELECT * FROM PRODOTTO WHERE ID_CAT='"&request("id_cat")&"'"
    aprirs sql
    do until rs.eof
    sql2="UPDATE SCONTI SET SCONTO='"&request("scontocat")&"' WHERE ID_CL='"&request("id_cl")&"' AND ID_PR='"&rs("id_pr")&"'"
    conn.execute(sql2)
    rs.movenext
    loop
    %>

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.