| Precedente :: Successivo |
| Autore |
Messaggio |
alfo77italy
Registrato: Mar Mag 05, 2009 16:21 Messaggi: 2
|
Inviato: 05/05/2009 16:32 Oggetto: DBgrid |
|
|
Nella pagina asp che visualizza i risultati nella DBgrid, apro il database nel seguente modo:
cat = "" & Request.Form("txt1")
'proprietà obbligatorie
objDBGrid.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" &
Server.MapPath(cat & ".mdb")
Funziona correttamente, ma il problema è che se clicco sulle freccette del 'campo' per fare l'ordinamento crescente o decrescente dei record, non funziona e mi ritorna il seguente errore:
Tipo di errore:
Microsoft JET Database Engine (0x80004005)
Impossibile trovare il file "c:\inetpub\wwwroot\prova\.mdb".
/prova/cls_bylucianiDBGrid.asp, line 15
Se invece definisco il nome del database senza usare la variabile Server.MapPath("db") funziona correttamente.
Ho bisogno però di aprire il database con la variabile, e vorrei sapere se esiste la possibilità di modificare il file cls_bylucianiDBGrid.asp affinchè funzioni correttamente.
Grazie per l'attenzione. |
|
| Torna in cima |
|
 |
alfo77italy
Registrato: Mar Mag 05, 2009 16:21 Messaggi: 2
|
Inviato: 10/05/2009 13:23 Oggetto: mi spiego meglio |
|
|
nella DBgrid che visualizza i record, se voglio fare l'ordinamento crescente o decrescente, funziona se dichiaro il nome del database così:
Dim objDBGrid
Set objDBGrid = New bylucianiDBGrid
objDBGrid.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("Prodotti.mdb")
NON funziona invece se faccio così (ed è come devo fare in quanto non conosco il nome):
Dim objDBGrid
Dim cat
cat = "" & Request.Form("txt1")
Set objDBGrid = New bylucianiDBGrid
objDBGrid.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath(cat & ".mdb") |
|
| Torna in cima |
|
 |
byluciani Site Admin

Registrato: Ven Ago 08, 2003 09:39 Messaggi: 212 Località: Gioia del Colle
|
Inviato: 13/05/2009 23:51 Oggetto: |
|
|
il problema si verifica perchè quando clicchi sulle frecce di ordinamento la pagina viene ricaricata e di conseguenza perdi il contenuto del form.request; la stessa cosa ti dovrebbe accadere quando cambi pagina in caso di molti record
per risolvere il problema bisogna modificare il codice della classe per adattarla alle tue esigenze o al massimo devi memorizzare il valore della request all'interno di una variabile Session
es.:
| Codice: |
Dim objDBGrid
Dim cat
If Request.Form("txt1") <> "" Then Session("cat") = Request.Form("txt1")
cat = Session("cat")
Set objDBGrid = New bylucianiDBGrid
objDBGrid.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath(cat & ".mdb")
|
se però scade la Session ritornerà il problema _________________
byluciani |
|
| Torna in cima |
|
 |
|