Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    Problema Anomalo con Update

    Ho un problema stranissimo con una stringa Update in un file ASP. Questo file, in poche parole, acquisisce dei dati da un altro file e deve poi scriverli in un DB. La maggior parte delle volte funziona perfettamente, a volte però, invece di scrivere nel DB tutti valori richiesti, ne salta uno e quindi mi sballa la visualizzazione della prima pagina del mio sito. Dal momento che ci sto sbattendo la testa da lungo tempo , vi posto i due codici incriminati sperando ke qualcuno di voi ci dia un okkiata.

    Questo è il file dove vengono inseriti i dati da sostituire nel DB:
    <%Dim objConn
    Set objConn = Server.CreateObject("AdoDB.connection")
    objConn.ConnectionString="Driver={Microsoft Access Driver (*.mdb)}; "&"DBQ=" & Server.MapPath("mdb-database/archivio.mdb")
    objConn.Open
    strpos="SELECT ID, Titolo, Posizione From Notizie Where Posizione<>0 Order By Posizione Asc"
    Set RsPos = Server.CreateObject("AdoDB.RecordSet")
    RSPos.Open strpos ,objConn
    strnotizia = "SELECT * FROM Notizie ORDER BY data desc"
    Set RsNotizie = Server.CreateObject("AdoDB.RecordSet")
    RSNotizie.Open strnotizia ,objConn
    dim Titoli(7),Cont,Pos(7),IDTitolo(7)
    ContT=1
    do while not rspos.eof
    IDtitolo(cont)=rspos("ID")
    Titoli(ContT) = rspos("titolo")
    Pos(ContT)=rspos("Posizione")
    ContT = ContT+1
    rspos.movenext
    loop
    <form name="form1" id="form1" method="get" action="aggiornaposizione.asp">
    <p align="center" class="Stile33">Aggiornamento Prima Pagina </p>
    <%for Cont=1 to 7%>


    notizia <%=pos(cont)%>
    <select name="notizia<%=pos(cont)%>" id="notizia<%=pos(cont)%>">
    <option value="<%=idtitolo(cont)%>"><%=titoli(Cont)%></option>
    <%rsnotizie.movefirst
    Do while not RSNotizie.Eof
    valore = RsNotizie("Titolo")
    nome = RsNotizie("ID")
    response.write("<option value=" & nome &">" & valore &"</option>")
    RsNotizie.movenext
    Loop%>
    </select>
    <input name="pos<%=Pos(Cont)%>" type="text" id="pos<%=Pos(Cont)%>" value="<%=pos(cont)%>" size="3" />
    pos. <%=pos(cont)%></p>
    <%next%>
    <input type="submit" name="Submit" value="Aggiorna" />
    <input type="reset" name="Submit2" value="Ripristina" />
    </p>


    </p>
    </form>
    </div>
    <%
    RSNotizie.close
    Set RSNotizie=Nothing
    RSpos.close
    Set RSpos=Nothing
    objConn.close
    set ObjConn = nothing
    %>

    Questo è invece il file di lettura e scrittura nel DB:
    <%'Campi nel DB
    Dim objconn
    Set objconn = Server.CreateObject("AdoDB.connection")
    objconn.ConnectionString="Driver={Microsoft Access Driver (*.mdb)}; "&"DBQ=" & Server.MapPath("mdb-database/archivio.mdb")
    objconn.Open
    Dim Posizioni(7)
    Dim Notizia(7)
    'acquisisco i dati dal form
    for I = 1 to 7
    Posizioni(I)=request("pos"&I)
    Notizia(I)=request("Notizia"&I)
    next
    IF notizia(1)="" or notizia(2)="" or notizia(3)="" or notizia(4)="" or notizia(5)="" or notizia(6)="" or notizia(7)=""then%>
    </p>
    <div id="Layer2" style="position:absolute; width:331px; height:115px; z-index:11; left: 343px; top: 235px; background-color: #FFFFFF; layer-background-color: #FFFFFF; border: 1px none #000000;">
    <p align="center" class="Stile35"> ATTENZIONE!!!!
    <p align="center" class="Stile36"><span class="Stile38">POSIZIONI AZZERATE

    </span>

    <span class="Stile38">ripetere l'inserimento delle posizioni
    </span>
    <p align="center" class="Stile36">
    <div id="Layer3" style="position:absolute; width:104px; height:23px; z-index:12; left: 111px; top: 133px;">Torna indietro</div>



    <p align="center"></div>
    <%ELSE
    dim strAzzera
    strAzzera="Update Notizie set Posizione='0'"
    objconn.execute(strAzzera)
    Dim strSQL
    for K=1 to 7
    strSQL = "UPDATE Notizie SET posizione ='"&posizioni(K)&"' WHERE ID="& Notizia(K)
    objconn.execute(strSQL)
    next%>
    <%end if
    objconn.close
    set objconn=Nothing
    %>
    A me sembra che tutto è scritto bene... Ma a volte salta un valore nel DB.
    Spero di ricevere prersto notizie
    Grazie!

  2. #2
    Nel database delle notizie ci sono dei record esistenti ma vuoti?
    E' nato www.lombardiamotori.it

    www.universocase.it: il primo portale italiano di annunci immobiliari gratuiti e autogestiti!

  3. #3
    No teorema sono tutti pieni....
    quello ke io devo modificare è la riga posizione ke mi varia la prima pagina!!
    Il Codice è esatto secondo te?

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.