Notizie: scarica ora l'ultima versione disponibile di Firefox!

Autore Topic: problema con db [firefox 1.0]  (Letto 8012 volte)

0 Utenti e 1 Visitatore stanno visualizzando questo topic.

Offline gennaro12

  • Post: 12
    • http://www.felizia.it
problema con db [firefox 1.0]
« il: 12 Gennaio 2005 19:36:50 »
buonasera, io ho appena messo on line il mio sito, e mi compare un errore strano,ho sviluppato il sito su una macchina con win Xp pro sp2 con ie 6.0 e firefox 0.8, fino qua tutto bene, 1 volta provato su altre macchine (ben 2 con Win Xp pro sp2 ie 6.0 e firefox 1.0 ) con quest'ultimo mi compare a fondo pagina questo errore:

Codice: [Seleziona]
Microsoft OLE DB Provider for ODBC Drivers error '80040e21'

Multiple-step OLE DB operation generated errors. Check each OLE DB status value, if available. No work was done.

/count/counter.asp, line 68



il codice riguardante è questo:

Codice: [Seleziona]
Set rs = Server.CreateObject("ADODB.Recordset")
rs.Open sql, objConn, 1, 3

rs.addnew
rs("num_visite") = "1"
rs("ora") = ora
rs("data") = data
rs("session_id") = session_id
rs("ip") = ip
rs("lingua") = lingua<-- riga 68
rs("browser") = browser
rs.update


qualcuno può aiutarmi a capire come posso risolverlo...non so come cambiare lo script in modo che sia digeribile da firefox 1.0.

Offline iacchi

  • Amministratore
  • Post: 6368
    • iacchiblog
problema con db [firefox 1.0]
« Risposta #1 il: 12 Gennaio 2005 19:45:25 »
Intanto posto nella sezione corretta.
Poi, domanda: con IE lo vedi per bene?

Offline gennaro12

  • Post: 12
    • http://www.felizia.it
problema con db [firefox 1.0]
« Risposta #2 il: 12 Gennaio 2005 19:47:25 »
Citazione da: iacchi
Intanto posto nella sezione corretta.
Poi, domanda: con IE lo vedi per bene?

scusami mi sono iscritto da poco e pensavo di postare nella sezione giusta..cmq su ie 6.0 si lo vedo bene (il sito se volete provare è http://www.felizia.it ).

Offline fabrixx

  • Post: 5888
problema con db [firefox 1.0]
« Risposta #3 il: 12 Gennaio 2005 19:47:28 »
Solo con firefox 1.0 quindi ?


Ho trovato qualcosa di simile qui ma....
http://www.pc-facile.com/forum/viewtopic.php?p=169862



Ciao :D

Offline gennaro12

  • Post: 12
    • http://www.felizia.it
problema con db [firefox 1.0]
« Risposta #4 il: 12 Gennaio 2005 19:52:42 »
Citazione da: fabrixx
Solo con firefox 1.0 quindi ?


Ho trovato qualcosa di simile qui ma....
http://www.pc-facile.com/forum/viewtopic.php?p=169862



Ciao :D

bhè sembra essere leggermente diverso, il sito è fatto in asp, html e css, in ie6 funzionano tutto,invece con ff1.0 lo script riguardante la news, non fa una piega, quello riguardante il contatore...nn funge.

Offline flod

  • Amministratore
  • Post: 15057
    • http://www.flod.org
problema con db [firefox 1.0]
« Risposta #5 il: 12 Gennaio 2005 20:27:14 »
Credo che sia difficile aiutarti se non posti anche la definizione delle variabili che metti nel RecordSet.

Riesci a mettere il tutto in una sola pagina e postare il codice?

Offline Kuarl

  • Post: 1
problema con db [firefox 1.0]
« Risposta #6 il: 12 Gennaio 2005 21:08:57 »
scusami se te lo dico ma il browser non c'entra. Asp viene eseguito sul server e produce codice html, tanto più che il codice che hai postato non si riferisce all'output

Se l'errore si presenta comunque solo con FF1.0 il problema è da ricercare altrove, magari nei dati che recuperi dal browser, se recuperi dei dati

Offline gennaro12

  • Post: 12
    • http://www.felizia.it
problema con db [firefox 1.0]
« Risposta #7 il: 12 Gennaio 2005 22:19:50 »
Citazione da: flod
Credo che sia difficile aiutarti se non posti anche la definizione delle variabili che metti nel RecordSet.

Riesci a mettere il tutto in una sola pagina e postare il codice?

certo  ti posto tutta la pg di codice:
-----------
<%
referr= Request.ServerVariables("HTTP_REFERER")
pagina = Request.ServerVariables("PATH_INFO")
ip = Request.ServerVariables("REMOTE_ADDR")
lingua = Request.ServerVariables("HTTP_ACCEPT_LANGUAGE")
browser = Request.ServerVariables("HTTP_USER_AGENT")
session_id = session("session_id")
ora = cstr(time())
data = date()
giorno = cstr(Day(Date))
mese = MonthName(Month(Date))
anno = cstr(Year(Date))
numero_mese = cstr(month(date()))

if referr = "" then
referr ="*"
end if
if pagina = "" then
pagina ="*"
end if
if ip = "" then
ip ="*"
end if
if lingua = "" then
lingua ="*"
end if
if browser = "" then
browser ="*"
end if
if session_id = "" then
session_id ="*"
end if
if ora = "" then
ora ="*"
end if
if data = "" then
data ="*"
end if
if giorno = "" then
giorno ="*"
end if
if mese = "" then
mese ="*"
end if
if anno = "" then
anno ="*"
end if
if numero_mese = "" then
numero_mese ="*"
end if

primavolta="no"

if session("start") = "si" then

   sql = "SELECT * FROM tot_visite"

   Set rs = Server.CreateObject("ADODB.Recordset")
   rs.Open sql, objConn, 1, 3

   rs.addnew   
   rs("num_visite") = "1"
   rs("ora") = ora
   rs("data") = data
   rs("session_id") = session_id
   rs("ip") = ip
   rs("lingua") = lingua <---linea 68
   rs("browser") = browser
   rs.update

   rs.Close
   set rs = Nothing

   session("start") = "no"
end if

sql = "SELECT * FROM stats WHERE session_id ='" & session_id & "' AND pagina ='" & pagina & "'"

Set rs = Server.CreateObject("ADODB.Recordset")
rs.Open sql, objConn, 3, 3

if rs.eof then
   rs.addnew   
   rs("ora") = ora
   rs("data") = data
   rs("session_id") = session_id
   rs("ip") = ip
   rs("pagina") = pagina
   rs("lingua") = lingua
   rs("browser") = browser
   rs.update
   primavolta="si"
end if

rs.Close
set rs = Nothing

sql = "SELECT * FROM page WHERE pagina ='" & pagina & "'"

Set rs = Server.CreateObject("ADODB.Recordset")
rs.Open sql, objConn, 3, 3

if primavolta="si" then
   rs.addnew   
   rs("ora") = ora
   rs("giorno") = giorno
   rs("mese") = mese
   rs("numero_mese") = numero_mese
   rs("anno") = anno
   rs("pagina") = pagina
   rs("session_visite") = 1
   rs("total_visite") = 1
   rs("referr") = referr
   rs("session_id") = session_id
   rs("data") = data      
   rs.update
else
   rs.addnew   
   rs("ora") = ora
   rs("giorno") = giorno
   rs("mese") = mese
   rs("numero_mese") = numero_mese
   rs("anno") = anno
   rs("pagina") = pagina
   rs("session_visite") = 0
   rs("total_visite") = 1
   rs("referr") = referr
   rs("session_id") = session_id
   rs("data") = data      
   rs.update
end if

primavolta="no"
   
rs.Close
set rs = Nothing

sql = "SELECT * FROM tot_pagina WHERE pagina ='" & pagina & "'"

Set rs = Server.CreateObject("ADODB.Recordset")
rs.Open sql, objConn, 3, 3

if rs.eof then
   rs.addnew   
   rs("pagina") = pagina
   rs("total_visite") = 1
   rs.update
else
   conta = rs.Fields("total_visite")
   conta = conta + 1
   rs("total_visite") = conta
   rs.update
end if
   
rs.Close
set rs = Nothing
objConn.Close
Set objConn = Nothing
%>

Offline gennaro12

  • Post: 12
    • http://www.felizia.it
problema con db [firefox 1.0]
« Risposta #8 il: 12 Gennaio 2005 22:25:03 »
Citazione da: Kuarl
scusami se te lo dico ma il browser non c'entra. Asp viene eseguito sul server e produce codice html, tanto più che il codice che hai postato non si riferisce all'output

Se l'errore si presenta comunque solo con FF1.0 il problema è da ricercare altrove, magari nei dati che recuperi dal browser, se recuperi dei dati

Scusa ma fammi capire, se giustamente asp viene eseguito sul server e produce cod html ...pensi che non riesca a leggere dati dal browser?

Offline gennaro12

  • Post: 12
    • http://www.felizia.it
problema con db [firefox 1.0]
« Risposta #9 il: 12 Gennaio 2005 22:37:43 »
Citazione da: Kuarl
il problema è da ricercare altrove, magari nei dati che recuperi dal browser, se recuperi dei dati



Grazie Kuarl,Ho capito dove può trovarsi l'errore, se io tolgo tutto quello che richiama la variabile lingua, lo script funziona.
 
--lingua = Request.ServerVariables("HTTP_ACCEPT_LANGUAGE")--, credo che l'errore derivi da qua, cioè in FF1.0 bisogna richiedere la variabile Lingua in 1 altro modo...ma in che modo?

Offline lucasali

  • Moderatore
  • Post: 7493
problema con db [firefox 1.0]
« Risposta #10 il: 13 Gennaio 2005 10:06:36 »
il codice d'errore "80040e21" indica che tenti di scrivere un valore con lungheza zero in un campo del DB che non può essere di lunghezza zero
quindi:
- o sistemi il DB in modo che accetti anche il valori di lunghezza zero
- o concateni ua stringa alla variabile in modo che non sia mai vuoto
- oppure testi la lughezza della variabile e se lunga zero la sostituisci con una stringa di almeno un carattere.

ho detto tutto questo per chiarire il concetto a carattere generale, se tu avessi operato in questo modo ti saresti risparmiato di analizzare l'errore "80040e21" perché già fatto in fase di progetto, e ti saresti concentrato sul fatto che FF non ti passa la lingua.
tieni presente inoltre che "HTTP_USER_AGENT" può essere manipolata dall'utente e anche in quel caso potrebbe passarti una stringa vuota;
per "REMOTE_ADDR" la cosa è più complessa ma anche in questo caso può essere di lunghezza zero.

il mio FF passa come "HTTP_USER_AGENT" il valore "it,it-it;q=0.8,en-us;q=0.5,en;q=0.3 "

ciao. Luca

Offline gennaro12

  • Post: 12
    • http://www.felizia.it
problema con db [firefox 1.0]
« Risposta #11 il: 18 Gennaio 2005 12:06:59 »
Citazione da: lucasali
il codice d'errore "80040e21" indica che tenti di scrivere un valore con lungheza zero in un campo del DB che non può essere di lunghezza zero
quindi:
- o sistemi il DB in modo che accetti anche il valori di lunghezza zero
- o concateni ua stringa alla variabile in modo che non sia mai vuoto
- oppure testi la lughezza della variabile e se lunga zero la sostituisci con una stringa di almeno un carattere.

ho detto tutto questo per chiarire il concetto a carattere generale, se tu avessi operato in questo modo ti saresti risparmiato di analizzare l'errore "80040e21" perché già fatto in fase di progetto, e ti saresti concentrato sul fatto che FF non ti passa la lingua.
tieni presente inoltre che "HTTP_USER_AGENT" può essere manipolata dall'utente e anche in quel caso potrebbe passarti una stringa vuota;
per "REMOTE_ADDR" la cosa è più complessa ma anche in questo caso può essere di lunghezza zero.

il mio FF passa come "HTTP_USER_AGENT" il valore "it,it-it;q=0.8,en-us;q=0.5,en;q=0.3 "

ciao. Luca


Grazie luca,
hai ragione su 1 cosa: non ho mai pensato a questo tipo di problema prima, è anche vero che non ho mai fatto siti che richiedessero l'uniformità su tutti i browsers, quindi modifico il codice,  ti ringrazio x la cortesia.

ciao ge

Offline gennaro12

  • Post: 12
    • http://www.felizia.it
problema con db [firefox 1.0]
« Risposta #12 il: 26 Gennaio 2005 21:58:15 »
Citazione da: lucasali

- o sistemi il DB in modo che accetti anche il valori di lunghezza zero

- oppure testi la lughezza della variabile e se lunga zero la sostituisci con una stringa di almeno un carattere.
ciao. Luca


Dopo moltissimo tempo ho dedicato del tempo a sviluppare il sito, ho effettuato le mie modifiche [quelle sopra indicate]ma...tutto è uguale a prima!
oggi ho testato il sito con firefox 1.0RC e tutto fungeva bene, non so, qualcuno ha in mente qualcosa consiglio?...

Offline lucasali

  • Moderatore
  • Post: 7493
problema con db [firefox 1.0]
« Risposta #13 il: 27 Gennaio 2005 09:55:53 »
scusami ma non ho capito ... funziona?

con il mio FF andava prima e continua ad andare anche ora.

ciao. Luca

Offline gennaro12

  • Post: 12
    • http://www.felizia.it
problema con db [firefox 1.0]
« Risposta #14 il: 27 Gennaio 2005 18:24:39 »
no, non funziona, ho provato ieri sera da casa a scaricare l'ultima versione di ff [la 1.0 che oltrettutto era identica a quella che avevo prima] ma nulla continua a darmi quell'errore.
nel messaggio sopra è evidenziato le modifiche che ho fatto, ma nulla è cambiato.inizio a pensare che forse il problema è dato dal mio pc..provo a mettere 1 versione vecchia di ff.

0 Utenti e 1 Visitatore stanno visualizzando questo topic.