Visualizzazione dei risultati da 1 a 9 su 9
  1. #1
    Utente di HTML.it
    Registrato dal
    Jan 2002
    Messaggi
    687

    variabile non supportata in vbscript

    Ciao a tutti.

    Ho questo problema:

    intercetto il valore di una variabile così:
    idtip=session("idtip")

    sql è:

    sqlq = "SELECT * FROM itemdetailtab WHERE id='"&idtip&"'"

    mi da questo strano errore:
    Errore di run-time di Microsoft VBScript (0x800A01CA)
    La variabile utilizza un tipo di automazione non supportato in VBScript

    come mai?
    e metto response.write(session("idtip")) compare il valore giusto quindi la variabile di sessione non è vuota...

    ho provato anche id="&idtip&" senza singolo apice ma da lo stesso errore....

    uso mysql

    grazie!

  2. #2
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Vediamo qualcosa in più dello script...
    Per esempio quando esegui la query.

    Roby

  3. #3
    Utente di HTML.it
    Registrato dal
    Jan 2002
    Messaggi
    687
    cosi, non capisco cosa non vada. L'avrò fatto un miliardo di volte...

    idtip=session("idtip")


    Dim cn
    Set cn = Server.CreateObject("ADODB.Connection")
    cn.ConnectionString="dsn=XXX;uid=XXX;pwd=XXX;"
    cn.open

    Dim rsq, sqlq
    Set rsq = Server.CreateObject("ADODB.Recordset")


    sqlq = "SELECT * FROM itemdetailtab WHERE id='"&idtip&"'"



    Set rsq.ActiveConnection = cn
    rsq.CursorType = 1
    rsq.CursorLocation = 3
    rsq.LockType = 3
    rsq.Open sqlq, cn

  4. #4
    Utente di HTML.it L'avatar di longline
    Registrato dal
    Sep 2001
    Messaggi
    5,363
    Ma id è una stringa? Hai messo gli apici nell'sql...

  5. #5
    Utente di HTML.it
    Registrato dal
    Jan 2002
    Messaggi
    687
    id è la variabile contatore.

    gli apici li ho messi: ho provato sia '""' che solo doppio apice

    se scrivo

    idtip="36" e gli fornisco io il numero id funziona.

    Se
    scrivo
    idtip=session("idtip")
    response.write(idtip)

    mi stampa effettivamente 36, quindi la sessione esiste ma mi da quell'errore.

    non so...

  6. #6
    Utente di HTML.it L'avatar di longline
    Registrato dal
    Sep 2001
    Messaggi
    5,363
    E sei scrivi così, che fa?

    sqlq = "SELECT * FROM itemdetailtab WHERE id=" & idtip

  7. #7
    Utente di HTML.it
    Registrato dal
    Jan 2002
    Messaggi
    687
    Tipo di errore:
    Errore di run-time di Microsoft VBScript (0x800A01CA)
    La variabile utilizza un tipo di automazione non supportato in VBScript
    /arajapan/newloadup.asp, line 23

    la linea 23 è sqlq

  8. #8
    Utente di HTML.it
    Registrato dal
    Jan 2002
    Messaggi
    687
    allora l'errore deve stare nel tipo di campo del db...

    ho provato a cambiare da contatore a varchar e funziona tutto!!!!

    come mai?

    in mysql come variabile contatore uso

    int(10)unsigned auto incrementante ....cosa dovrei usare allora?

    grazie a tutti

  9. #9
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    codice:
    idtip=session("idtip") 
    
    Dim cn 
    Set cn = Server.CreateObject("ADODB.Connection") 
    cn.ConnectionString="dsn=XXX;uid=XXX;pwd=XXX;" 
    cn.open 
    
    Dim rsq, sqlq 
    sqlq = "SELECT * FROM itemdetailtab WHERE id = "&idtip
    
    Set rsq = Server.CreateObject("ADODB.Recordset")
    rsq.Open sqlq, cn
    
    ...
    ...
    Roby

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.