Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 13
  1. #1

    Connessione chiusa o non utilizzabile

    In uno script vbscript ho questo problemino: apro la connessione all'inizio della pagina:

    Dim connection
    Set connection = Server.CreateObject("ADODB.Connection")
    connection.Open(my_connection_STRING)

    Eseguo una insert sulla connessione:

    query = "INSERT INTO docs (descrizione,...) VALUES ...) connection.Execute(query)

    e fin qui tutto ok.
    Ora devo ricavare i nuovi dati appena inseriti, insieme a tutti gli altri:

    query = "SELECT descrizione,file FROM tabella"
    Set rec = Server.CreateObject("ADODB.Recordset")
    rec.Open query,connection,3,3

    e sulla riga di rec.open mi dà:

    Tipo di errore:
    ADODB.Recordset (0x800A0E7D)
    Connessione chiusa o non valida in questo contesto. Impossibile utilizzarla per eseguire l'operazione.

    Da che dipende?

  2. #2
    posta il codice
    "0 è tutto finito. 1 è solo l'inizio"
    HO IL CERTIFICATO DI RESISTENZA.

  3. #3
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Vediamo lo script completo.

    Roby

  4. #4
    sicuri? o posto solo i pezzi salienti? è lunghetto

  5. #5
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Pulisci lo script, metti solo la INSERT e la SELECT successiva dopo esserti accertato che non funziona nemmeno in quella versione ridotta.

    Roby

  6. #6
    codice:
    <%
    Dim connection,fs
    Dim descrizione, file_up
    'fs --> oggetto file system 
    
    Set script_name = Request.ServerVariables("SCRIPT_NAME")
    Set method = Request.ServerVariables("REQUEST_METHOD")
    Set connection = Server.CreateObject("ADODB.Connection") 
    
    connection.Open(cr_connection_STRING_admin)		
    
    if (UCase(method) = "POST") then
    
    	Set upload = new cUpload
    	upload.Overwrite = false 'non permetto che il file venga sovrascritto
    	upload.Upload()
    	
    	descrizione = upload.Form("descrizione")
    	file_up = upload.Form("file")
    	
    	if (file_up = "") then
    		head = "Errore: Specificare un file"
    	else
    	
    		upload.SetPath("../docs")
    		upload.SaveAll 	'Salva il file in locale
    	
    		'Inserimento nel db
    		Response.Write("No errori durante il caricamento del file, inserisco nel db
    ")		
    	
    		descrizione = Replace(descrizione,"'","''")
    		file_up = Replace(file_up,"'","''")
    		
    		query = "INSERT INTO docs (descrizione, file) VALUES ('"+descrizione+"','"+file_up+"')"
    					
    		connection.Execute(query)
    					
    		Set upload = Nothing
    	
    	end if
    
    end if
    
    %>
    poi un pò di html e

    codice:
    <%
    query = "SELECT descrizione,file FROM docs"
    Set rec = Server.CreateObject("ADODB.Recordset")
    rec.Open query,connection,3,3
    %>
    
    
    <TABLE width="50%" border="1" cellspacing="0" cellpadding="0">
    	<TR bgcolor="FF9900" class="titoli"> 
    		<TD><DIV align="center">descrizione</DIV></TD>
    		<TD><DIV align="center">file</DIV></TD>
    		<TD><DIV align="center">strumenti</DIV></TD>
    	</TR>
    	<% Do While Not rec.EOF %>
    	<TR> 
    		<TD><%=rec("descrizione")%></TD>
    		<TD><%=rec("file")%></TD>
    		<TD></TD>
    	</TR>
    	<% 
    rec.MoveNext
    Loop 
    %>
    	</TABLE>
    </DIV>
    <hr size="1">
    
    
    <FORM action="<%=script_name%>" method="post" enctype="multipart/form-data" name="form1">
    <TABLE width="45%" border="1" cellspacing="0" cellpadding="0">
    	<TR bgcolor="FF9900" class="titoli"> 
    		<TD colspan="2">Carica nuovo documento</TD>
    	</TR>
    	<TR class="testi"> 
    		<TD width="39%">descrizione</TD>
    		<TD width="61%"> <INPUT name="descrizione" type="text" class="testi" id="descrizione" value="<%=descrizione%>"> 
    		</TD>
    	</TR>
    	<TR class="testi"> 
    		<TD>documento</TD>
    		<TD><INPUT name="file" type="file" class="testi"></TD>
    	</TR>
    	<TR class="testi"> 
    		<TD colspan="2"><INPUT type="submit" name="Submit" value="Invia"></TD>
    	</TR>
    </TABLE>
    </FORM>
    </BODY>
    </HTML>
    <%
    rec.close()
    connection.close()
    Set rec = nothing
    Set connection = nothing
    %>
    ecco a voi

  7. #7
    si lo so che è un errore mai visto nè sentito e nn si capisce come esce fuori...xò nn mi abbandonate così

  8. #8
    Per esempio se subito prima di aprire il recordset provo a chiudere la connessione con
    connection.close()
    l'errore che mi dà è: "Necessario oggetto" come se l'oggetto connection non esistesse +

  9. #9
    Prova a fare così (se il db è access) ... nella SELECT sostituisci file con [File], che dovrebbe essere una parola riservata e riprova a vedere cosa succede in pratica così:

    codice:
    query = "SELECT descrizione, [file] FROM docs"

  10. #10
    buona idea ma niente da fare....

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.