Newsgroup: it.comp.www.asp
Titolo: sto impazzendo con uno script...

segue una paginetta che ho fatto:
<FORM NAME="NewYear" ACTION="NewYear.asp" METHOD="post">
    Insert the new year:
    <INPUT TYPE="text" NAME="txtYear" SIZE="4" MAXLENGTH="4"><BR>
    <INPUT TYPE="submit" VALUE="OK">
  </FORM>
  <%
    Dim strConn, strYear, strSQL, conTemp, rstTemp
    strYear = Request("txtYear")
    If strYear <> "" Then
       Set conTemp = Server.CreateObject("ADODB.Connection")
       strConn = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & Server.MapPath("Races.mdb")
       conTemp.Open strConn
       Set rstTemp = Server.CreateObject("ADODB.Recordset")
       With rstTemp
         strSQL = "SELECT * FROM RACES_YEARS"
         .Open strSQL, conTemp, adOpenStatic, adLockOptimistic, adCmdText
         .Find "Year = '" & strYear & "'"
         If .BOF Or .EOF Then
            conTemp.Execute "INSERT INTO RACES_YEARS VALUES ('" & strYear & "')"
            %><SCRIPT LANGUAGE="JavaScript">alert("Year '" + <% = strYear %> +
"' Inserted!");</SCRIPT><%
         Else
            %><SCRIPT LANGUAGE="JavaScript">alert("Year '" + <% = strYear %> +
"' already inserted!");</SCRIPT><%
         End If
      End With
      rstTemp.Close
      conTemp.Close
      Set rstTemp = Nothing
      Set conTemp = Nothing
    End If
  %>
se cerco di aggiungere un record in archivio mid a invariabilmente il seguente
emssaggio di errore:
Tipo di errore:
Microsoft JET Database Engine (0x80004005)
Per l'operazione č necessaria una query aggiornabile.
percheeee?????? non riesco a capirlo..aiutoooooooo!!!
--
Enjoy the .NET community! ASPItalia.com
 
http://forum.aspitalia.com/
 
http://www.aspitalia.com/

Hai i permessi in lettura/scrittura sul file .mdb per l'utente internet?
--
:: Fate i bravi e non clonate le pecore!
:: Distractly yours... 
man...@ufologia.net


Ciao,
se non ricordo male, quel tipo di errore viene dato perche' il server non ha
i permessi necessari per apportare modifiche al DB (come la tua insert).
Dovresti controllare che l'utente IUSR_nomemacchina (che e' l'utente
normalmente utilizzato da IIS) abbia permessi di scrittura per l'mdb che
stai utilizzando.
Ciao
Alex

L'errore da te segnalato č dovuto ad un'errata impostazione dei permessi o
sul database Access o sulla directory che contiene il database.
Accertati che folder e database abbiano i necessari permessi in scrittura ed
il codice dovrebbe funzionare.
Ciao,
Gio
--------------------------------
Inviato via 
http://usenet.libero.it

 segue una paginetta che ho fatto:
Le risposte te le hanno gia' date, devi in sostanza abilitare in
scrittura l'utente IUSR_* alla cartella che contiene l'MDB, se sei in
hosting pero' generalmente o lo fai fare a FrontPage (importando l'MDB
con FrontPage ti chiede se vuoi mettere il file in una cartella "fpdcb",
tu digli di si e quando pubblicherai ci penseranno le estensioni di
FrontPage ad impostare le permission) oppure devi chiedere al provider
di farlo per te.
Quindi volevo solo chiederti se secondo te il codice che hai scritto non
sarebbe piu' compatto e leggibile cosi':
<%
Dim strYear, conTemp, rstTemp
strYear = Request("txtYear")
If strYear <> "" Then
   Set conTemp = Server.CreateObject("ADODB.Connection")
   conTemp.Open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" &
Server.MapPath("Races.mdb")
   Set rstTemp = conTemp.Execute("SELECT * FROM RACES_YEARS Where Year =
'" & strYear & "'")
   If rst.EOF Then
       conTemp.Execute "INSERT INTO RACES_YEARS VALUES ('" & strYear &
"')" %>
<SCRIPT LANGUAGE="JavaScript">alert("Year '" + <% = strYear %> + "'
Inserted!");</SCRIPT>
<% Else %>
<SCRIPT LANGUAGE="JavaScript">alert("Year '" + <% = strYear %> + "'
already inserted!");</SCRIPT>
<% End If
  End With
  rstTemp.Close
  Set rstTemp = Nothing
  conTemp.Close
  Set conTemp = Nothing
End If
%>
--
Ciao!
   Alex Palmese
---
Sei anche tu stanco dei messaggi spam? Usa Terminator, il programma
anti-spam italiano FREEWARE! 
http://www.sertel.net/terminator/