View Full Version : Moduli di regstrazione in ASP
shadow76it
27-08-2003, 12:02
Salve a tutti sto incominciando a programmare in ASP usando Dreamwaver MX e usando un database MS Acces.
Quando realizzo le pagine ASP con moduli di inserimeto record e moduli Login quando vado nella pagina di registrazione con l'apposito form quando clicco sul pulsante inserisci record dopo aver inserito tutti i dati e poi andare nella pagina login mi da questo errore:
Tipo di errore:
Microsoft OLE DB Provider for ODBC Drivers (0x80004005)
[Microsoft][Driver ODBC Microsoft Access] Impossibile usare "(sconosciuto)". File già in uso.
/prova/registrati.asp, line 113
Che cosa può essere? il file access si trova nella directori wwwroot di inetpub. Ho anche creato la connessione in OBDC in strumeti di amministrazione.
Uso WinXP
Di solito capita quando ( o almeno a me è successo in questi casi ) :
1) sono impostate in maniera errata le permissioni sul file MDB o sulla cartella. Se non hai il permesso di scrittura nella cartella dove risiede il database, non riesce a creare il file LDB e quindi va nel panico, idem se non puoi scrivere sul file, sola lettura o permesso negato
2) hai installata una versione dei mdac non aggiornata. Una vecchia versione degli mdac, non ricordo quale purtroppo :rolleyes:, ha questo problema
Cmq ti consiglio di creare una sottocartella dove mettere il database, così da non fare confusione con le permissioni dell'intera wwwroot. ;)
ciau
shadow76it
27-08-2003, 14:58
Originariamente inviato da asdalo
Di solito capita quando ( o almeno a me è successo in questi casi ) :
1) sono impostate in maniera errata le permissioni sul file MDB o sulla cartella. Se non hai il permesso di scrittura nella cartella dove risiede il database, non riesce a creare il file LDB e quindi va nel panico, idem se non puoi scrivere sul file, sola lettura o permesso negato
2) hai installata una versione dei mdac non aggiornata. Una vecchia versione degli mdac, non ricordo quale purtroppo :rolleyes:, ha questo problema
Cmq ti consiglio di creare una sottocartella dove mettere il database, così da non fare confusione con le permissioni dell'intera wwwroot. ;)
ciau
Allora Ho scaricato ed installato dal sito della microsoft la versione Aggiornata MDAC, ho anche visto che il file con estenzione .LDB viene creata e ho messo il file di Access sotto una cartella in C: levando la spunta in solo lettura ed archiviazione, ma purtroppo nulla da fare sempre lo stesso errore.Sto andando al manicomio aiuto.... :muro: :muro: :muro:
Ecco L'errore:
Informazioni tecniche (per il personale del supporto tecnico)
Tipo di errore:
Microsoft OLE DB Provider for ODBC Drivers (0x80004005)
[Microsoft][Driver ODBC Microsoft Access] Impossibile usare "(sconosciuto)". File già in uso.
/tonino/registrati.asp, line 113
Tipo di browser:
Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)
Pagina:
POST 98 bytes to /tonino/registrati.asp
POST Data:
Nome=antonio&Cognome=klj&nomeutente=tonino&password=mariotti&email=mariotti@tin.it&MM_insert=form1
Controlla anche che l'utente Internet Guest User di IIS abbia i permessi di scirttura in quella cartella e su quel file, devi usare la linguetta protezione (nelle proprietà della cartella) se stai lavorando su una partizione NTFS.
Se negli utenti non c'è aggiungilo e dagli controllo completo, scegli la spunta di applicare le impostazioni anche agli oggetti figlio.. ecc ecc e premi applica.
Un'altra soluzione che mi venne data, ma non ho mai provato è di usare un DSN per la connessione al db e creare un utente nel db, poi connettersi usando nome utente e pass, magari prova ma non so se funzia
shadow76it
27-08-2003, 15:29
Originariamente inviato da asdalo
Controlla anche che l'utente Internet Guest User di IIS abbia i permessi di scirttura in quella cartella e su quel file, devi usare la linguetta protezione (nelle proprietà della cartella) se stai lavorando su una partizione NTFS.
Se negli utenti non c'è aggiungilo e dagli controllo completo, scegli la spunta di applicare le impostazioni anche agli oggetti figlio.. ecc ecc e premi applica.
Un'altra soluzione che mi venne data, ma non ho mai provato è di usare un DSN per la connessione al db e creare un utente nel db, poi connettersi usando nome utente e pass, magari prova ma non so se funzia
quelle informazioni che mi hai dato tu non riesco a trovarle,adesso quando lancio come prima la pagina da dreamwaver(F12) mi da questo altro messaggio :
Tipo di errore:
Microsoft OLE DB Provider for ODBC Drivers (0x80004005)
[Microsoft][Driver ODBC Microsoft Access] Per l'operazione è necessaria una query aggiornabile.
/tonino/registrati.asp, line 115
:muro: :muro: :muro:
beh intanto se non ti da più l'errore sull'apertura del database significa che adesso lo apre e lo risce a lockare correttamente.
L'errore che hai ora invece è legato alla execute che non va a buon fine.
Di solito succede perchè o è stato aperto il database con un locktype errato, oppure stai cercando di eseguire una update (o una insert) con delle aggregazioni e access non le gestisce.
Magari se posti il pezzetto di codice che apre il database e le righe dove esegui la query è meglio ;)
Ah dimenticavo che in winxp per poter utilizzare la condivisione avanzata devi andare in Strumenti, opzioni cartella e levare la spunta da "Utilizza condivisione file semplice".
Altrimenti come hai giustamente detto, non trovi la linguetta della protezione e non puoi controllare niente.
Sorry :P
shadow76it
27-08-2003, 15:49
Originariamente inviato da asdalo
beh intanto se non ti da più l'errore sull'apertura del database significa che adesso lo apre e lo risce a lockare correttamente.
L'errore che hai ora invece è legato alla execute che non va a buon fine.
Di solito succede perchè o è stato aperto il database con un locktype errato, oppure stai cercando di eseguire una update (o una insert) con delle aggregazioni e access non le gestisce.
Magari se posti il pezzetto di codice che apre il database e le righe dove esegui la query è meglio ;)
Ma in tutto questo mi conviene scendere e comprare un manuale di dreamwaver? Risolverò il problema?
sai stò cercando di imparare ad usare al massimo il dreamwaver per creare pagine in ASP per poter trovare un lavoro come creatore di pagine web visto che L'HTML lo conosco abbastanza bene e che non mi riesce difficile creare una semplice pagina web statica.
mi dici quale pezzo di codice ti devo postare?
io intanto ti posto quello che della riga dove mi da errore.
c'è una istruzione di include
<!--#include file="Connections/clienti.asp" -->
mi serve anche clienti.asp
cmq da quanto vedo l'esecuzione mi sembra ok, secondo me se dai i permessi all Internet user guest va tutto a posto
cmq fammi avere anche l'altro file e così faccio girare lo script qui e vedo
shadow76it
27-08-2003, 16:27
Originariamente inviato da asdalo
c'è una istruzione di include
<!--#include file="Connections/clienti.asp" -->
mi serve anche clienti.asp
cmq da quanto vedo l'esecuzione mi sembra ok, secondo me se dai i permessi all Internet user guest va tutto a posto
cmq fammi avere anche l'altro file e così faccio girare lo script qui e vedo
Eccoti quello che mi chiedevi:
<%
' FileName="Connection_odbc_conn_dsn.htm"
' Type="ADO"
' DesigntimeType="ADO"
' HTTP="false"
' Catalog=""
' Schema=""
Dim MM_clienti_STRING
MM_clienti_STRING = "dsn=clienti;"
%>
bene, nel file registrati.asp commenta tutta questa parte
If (Not MM_abortEdit) Then
' execute the insert
Set MM_editCmd = Server.CreateObject("ADODB.Command")
MM_editCmd.ActiveConnection = MM_editConnection
MM_editCmd.CommandText = MM_editQuery
MM_editCmd.Execute
MM_editCmd.ActiveConnection.Close
If (MM_editRedirectUrl <> "") Then
Response.Redirect(MM_editRedirectUrl)
End If
End If
inibiremo così l'esecuzione della query, quindi aggiungi una riga con:
Response.Write MM_editQuery
lanciando la pagina dovrebbe scriverti la query che deve eseguire, verifica che si corretta, in quanto probabilmente è proprio quella il problema
Purtroppo non posso provarla, in quanto la query viene costruita in run time è non avendo il db non ho modo di verificarla ne di costruirmela
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.