Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it L'avatar di diegoctn
    Registrato dal
    May 2001
    Messaggi
    2,118

    Problema su un update di un campo Yes/No

    Ragazzi ho questo problema: ho una tabella con cod, art e ann (codice, articolo, annulla). Devo dare modo al magazziniere di annullare gli articoli e quindi ho questo codice:

    codice:
    <%
    strconn="Driver={Microsoft Access Driver (*.mdb)}; dbq="&Server.MapPath("magazzino.mdb") 
    set Conn=Server.CreateObject("ADODB.Connection") 
    Conn.open strconn 
    Squery="Select * from articoli;"
    set rs=server.createobject("adodb.recordset") 
    rs.open Squery,Conn
    %>
    <table border="1" width="100%">
    <tr>
        <td width="25%">Codice</td> 
        <td width="65%">Descrizione</td>
        <td width="10%">Ann.</td>
        
      </font>
        
      </tr>
      
    </table>
    
    <form action="ino.asp" method="post"> 
    <table border="1" width="100%"> 
    	<% while not Rs.eof %>
    	<tr> 
    		<td><INPUT TYPE="TEXT" name="id" value="<%=rs("cod")%>"></td> 
    		<td><font color="#FF9900"><%=rs("art")%></FONT></td> 
    		<td><font color="#FF9900"><INPUT TYPE="checkbox" name="ann" %=rs("ann")%></FONT></td> 
    		 
    	</tr> 
    	<% Rs.movenext
    	   wend %>
    	
    	<tr>
    		<td colspan="5" align="center"><input type="submit" name="action" value="AGGIORNA TUTTO">
    che manda le variabili ann e cod a questa pagina:

    codice:
      <%
    ann= request.form("ann")
    idd=request.form("cod")
    strconn="Driver={Microsoft Access Driver (*.mdb)}; dbq="&Server.MapPath("magazzino.mdb") 
    set Conn=Server.CreateObject("ADODB.Connection") 
    Conn.open strconn
    if Request("action") <> "" then 
    		arrID = Split(Replace(Request.Form("cod")," ",""), ",", -1, 1) 
    		For i = LBound(arrID) to Ubound(arrID)
    			sql = "UPDATE articoli set ann=' & ann & '  where cod='"& idd&"';" 
    			conn.execute(sql) 
    		Next
    	end if 
    
    conn.execute(sql)
    
    conn.close
    set conn = nothing
    
    response.redirect "default.asp"
    
    %>
    Mi dice Testo del comando non impostato per l'oggetto comando. Mai sentito prima.

  2. #2

  3. #3
    Utente di HTML.it L'avatar di diegoctn
    Registrato dal
    May 2001
    Messaggi
    2,118
    La conn.exexute

    Comunque non passa il valore cod


  4. #4
    ma la con dentro il ciclo o quella fuori?
    Cmq di solito un errore del genere lo da quando la varibile sql è nulla

  5. #5
    Utente di HTML.it L'avatar di diegoctn
    Registrato dal
    May 2001
    Messaggi
    2,118
    Adesso ho messo un pò al posto il codice:

    codice:
    Conn.open strconn 
    Squery="Select * from articoli;"
    set rs=server.createobject("adodb.recordset") 
    rs.open Squery,Conn
    %>
    <table border="1" width="100%">
    <tr>
        <td width="25%">Codice</td> 
        <td width="65%">Descrizione</td>
        <td width="10%">Ann.</td>
        
      </font>
        
      </tr>
      
    </table>
    
    <form action="ino.asp" method="post"> 
    <table border="1" width="100%"> 
    	<% while not Rs.eof %>
    	<tr> 
    		<td><INPUT TYPE="TEXT" name="cod" value="<%=rs("cod")%>"></td> 
    		<td><font color="#FF9900"><%=rs("art")%></FONT></td> 
    		<td><font color="#FF9900"><INPUT TYPE="checkbox" name="ann" ></FONT></td> 
    		 
    	</tr> 
    	<% Rs.movenext
    	   wend %>
    	
    	<tr>
    		<td colspan="5" align="center"><input type="submit" name="action" value="AGGIORNA TUTTO">
    	</td>
    
    .........
    .........
    .........
    
    
    <%
    ann= request.form("ann")
    idd=request.form("cod")
    
    strconn="Driver={Microsoft Access Driver (*.mdb)}; dbq="&Server.MapPath("magazzino.mdb") 
    set Conn=Server.CreateObject("ADODB.Connection") 
    Conn.open strconn
    if Request("action") <> "" then 
    		arrID = Split(Replace(Request.Form("cod")," ",""), ",", -1, 1) 
    		For i = LBound(arrID) to Ubound(arrID)
    			sql = "UPDATE articoli set ann=' & ann & '  where cod='"& idd&"';" 
    			conn.execute(sql) 
    		Next
    	end if 
    
    conn.execute(sql)
    
    conn.close
    set conn = nothing
    
    response.redirect "default.asp"
    
    %>
    Il codice "passa" ma non mi aggiorna il campo.

  6. #6
    comment il response.redirect e inserisci dei response.write nei punti chiave per vedere se le variabili si riempiono a dovere. Poi esegui, così ti rendi conto di cosa non va.

  7. #7
    Utente di HTML.it L'avatar di diegoctn
    Registrato dal
    May 2001
    Messaggi
    2,118
    Ho gia fatto un response.write e mi da TUTTI gli articoli e i tre che ho fleggato con valore on. Mi sto esasperando.....

  8. #8
    Utente di HTML.it L'avatar di diegoctn
    Registrato dal
    May 2001
    Messaggi
    2,118
    Adesso utilizzo questo codice:

    codice:
     <%
    ann= request.form("ann")
    idd=request.form("cod")
    
    
    strconn="Driver={Microsoft Access Driver (*.mdb)}; dbq="&Server.MapPath("magazzino.mdb") 
    set Conn=Server.CreateObject("ADODB.Connection") 
    Conn.open strconn
    if Request("action") <> "" then 
    		arrID = Split(Replace(Request.Form("cod")," ",""), ",", -1, 1) 
    		For i = LBound(arrid) to Ubound(arrid)
    If ann = "on" then
    
    sql = "UPDATE articoli ann=true  where cod='"& idd&"';" 
    			conn.execute(sql) 
    end if
    		Next
    	end if 
    
    conn.execute(sql)
    
    conn.close
    set conn = nothing
    
    response.redirect "default.asp"
    
    %>
    ma mi da sempre Testo del comando non impostato per l'oggetto comando

    Non me ne esco più

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.