Visualizzazione dei risultati da 1 a 4 su 4

Discussione: "EOF" non funzionante

  1. #1

    "EOF" non funzionante

    Ragazzi, come mai in questo loop mi dà sempre il response "User Errata bla bla..", anche quando l'user è corretta?


    Do while OLEDbData.Read()
    If (OLEDbData.Read() = false) Then
    Response.Write("User Errata")
    Else
    response.write(User)
    End If
    Loop

    Grazie mille per la vostra collaborazione!
    Ciaooo!
    Davis

  2. #2
    Utente di HTML.it
    Registrato dal
    Aug 2001
    Messaggi
    1,482
    Immagino che quel OleDBData sia un oggetto OleDBDataReader.

    Mi sembra strano che tu abbia questo problema in quanto in ciclo del tipo

    codice:
    Do While OggettoDataReader.Read
     '.......
    Loop
    Il metodo Read non ha mai valore False.
    Poi devi fare attenzione ad una cosa, se tu scrivi "OleDBData.Read()" ti passa al record successivo, anche se lo fai all'interno di un'istruzione IF, o di un semplice Response.Write.

    Hey hey, my my Rock and roll can never die!

  3. #3
    Utente di HTML.it L'avatar di Alendar
    Registrato dal
    May 2002
    Messaggi
    169
    se tu hai un solo record questo ciclo ti dà sempre false, perchè nel momento in cui fai il while ti sposti al primo record, e la if restituisce false.

    La If va messa prima di un ciclo Do...While,
    e il ramo Else scrive "User errata".

    Inoltre restituendo il metodo Read un boolean, non è necessario confrontarlo.

    Es.:
    While (Reader.Read()) equivale a
    While (Reader.Read()=true)

    e If (!Reader.Read()) equivale a
    If (Reader.Read()=false)

  4. #4
    Grazie tante ragazzi tutto molto chiaro
    Davis

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.