Visualizzazione dei risultati da 1 a 5 su 5

Discussione: cancellazione record

  1. #1

    cancellazione record

    sapete dirmi dove sbaglio in questo esercizio ?

    ...ho una pagina che recupera con un RS l'elenco dei prodotti da DB e i vari prodotti sono cliccabili passando ad una pagina di cancellazione (clean.asp), che peò mi da errore:
    -------------------------------
    Microsoft OLE DB Provider for ODBC Drivers error '80040e14'

    [Microsoft][Driver ODBC Microsoft Access] Errore di sintassi nella stringa nell'espressione della query 'ID=972''.

    /istituto/tecnologico/info/mercato/clean.asp, line 11
    ------------------------------

    questo è il codice della pagina che visualizza i prodotti:

    <%
    user = Request.QueryString( "utente" )
    venduto = Request.Form("venduto")
    totale = 0

    Dim APT

    Set conn = Server.CreateObject("ADODB.Connection")
    conn.Open "driver={Microsoft Access Driver (*.mdb)};dbq="&Server.MapPath("mdr.mdb")


    ' Apri il recordset esplicitamente
    Set rs = Server.CreateObject("ADODB.RecordSet")

    rs.Open "SELECT * FROM Collection ORDER BY inserimento",Conn

    %>

    <form method="POST" action="clean.asp">
    <table width="719" border="0" align="center" cellpadding="0" cellspacing="0">
    <tr>
    <th>
    <div align="center"><center><table border="0" cellpadding="2" cellspacing="0"
    bordercolor="#111111"
    style="border-collapse: collapse; color:#C0C0C0; font-size:12 pt; font-family:Verdana"
    width="719">
    <tr bgcolor="#0099CC">
    <td width="74"><font color="#FFFFFF">foto</font></td>
    <td width="74"><font color="#FFFFFF">codice</font></td>
    <td width="449"><font color="#FFFFFF">nome</font></td>
    <td width="106"><font color="#FFFFFF">prezzo</font></td>
    </tr>
    <%

    Do While (NOT rs.EOF)

    x_codice = rs("codice")
    x_nome = rs("nome")
    x_prezzo = rs("prezzo")

    %>
    <form method="POST" action="clean.asp">
    <tr bgcolor="<%= bgcolor %>">
    <td>[img]<%=RS( [/img]" width="40" height="60"></td>
    <td><font><% response.write x_codice %></font></td>
    <td>'"><font><% response.write x_nome %> </font></td>
    <td><font><% response.write x_prezzo %></font></td>
    </tr>
    <%
    rs.MoveNext
    Loop
    %>
    </center></div>

    </th>

    </tr>
    </table>
    </form>
    </body>
    </html>


    e questo quella della pagina di cancellazione:

    <%
    pid = TRIM( Request( "pid" ) )

    dim connection

    Set conn = Server.CreateObject("ADODB.Connection")
    conn.Open "driver={Microsoft Access Driver (*.mdb)};dbq="&Server.MapPath("mdr.mdb")

    Set rs = Server.CreateObject("ADODB.RecordSet")

    rs.Open "DELETE * FROM Collection WHERE ID=" &pid& "",Conn

    %>

    %%%%%%%%%%%%%%%%%%%%%%

    potete aiutarmi ? ! ?

  2. #2
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    1) Nella prima pagina, quando visualizzi l'elenco il form non ti serve visto che passi l'id da cancellare traite link
    2) La DELETE ha una sua sintassi e si esegue e basta senza recordset:

    codice:
    <% 
    pid = TRIM(Request("pid")) 
    
    dim connection 
    
    Set conn = Server.CreateObject("ADODB.Connection") 
    conn.Open "driver={Microsoft Access Driver (*.mdb)};dbq="&Server.MapPath("mdr.mdb") 
    
    strSQL="DELETE * FROM Collection WHERE ID=" &pid
    Conn.Execute(strSQL)
    %>
    Roby

  3. #3
    GRAZIE !

    ho capito dove sbagliavo e ora è OK !

    posso chiederti anche come faccio se volessi chiudere la pagina di cancellazione in automatico e ripassare all'elenco in modo che sia aggiornato dopo la cancellazione ?

    io ho provato con javascript a chiudere la finestra al termine con :


    <script language="javascript">
    window.close()
    </script>

    ma non so come far coincidere il recupero dell'elenco aggiornato !

  4. #4
    ... ho anche provato così, ma la pagina viene ricaricata nella stessa finestra di quella della cancellazione :

    strSQL="DELETE * FROM Collection WHERE ID=" &pid
    Conn.Execute(strSQL)

    response.redirect "elenco_prodotti.asp"
    %>
    <script language="javascript">
    window.close()
    </script>

  5. #5
    ... ho risolto da solo !

    la precedente soluzione era giusta, ma c'era un'errore di scrittura

    garzie comunque

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.