Duda

Iniciado por Jareth, 4 Noviembre 2006, 16:06 PM

0 Miembros y 1 Visitante están viendo este tema.

Jareth


Private Sub Command1_Click()
Dim bd As Database
Dim tb As Recordset

Set bd = Workspaces(0).OpenDatabase("C:\Documents and Settings\USER\Escritorio\bd1.mdb")
Set tb = bd.OpenRecordset("tabla1")


If tb!User = Text1.Text And tb!pass = Text2.Text Then
Unload Me
Form3.Show
Else
MsgBox ("Datos incorrectos")
tb.Close
bd.Close
Set tb = Nothing
Set bd = Nothing

End If


El otro code(el del registro del usuario)es el tuyo.
Gracias otra vez CeLaYa.

CeLaYa

aqui el problema es que no estas haciendo una busqueda en tu BD, lo que estas haciendo es comparar el usuario que escribes en el Text1 con el registro al que actualmente esta apuntando la BD, para corregir esto puedes hacer una consulta SQL (como la que te pase) o si lo quieres pudes modificar un poco el codigo que ya tienes

Private Sub Command1_Click()
Dim bd As Database
Dim tb As Recordset

Set bd = Workspaces(0).OpenDatabase("C:\Documents and Settings\USER\Escritorio\bd1.mdb")
Set tb = bd.OpenRecordset("tabla1")

tb.moveFist ' Movemos el puntero al inicio de la tabla
'Estableces el criterio de búsqueda
tb.FindFisrt (User = '" &  Text1.Text & "'  And pass = '" & Text2.Text & "'")

if tb.NoMatch then
   ' No se encotro el usuario
   MsgBox ("Datos incorrectos")
Else
   Form3.Show
end if

tb.Close
bd.Close
Set tb = Nothing
Set bd = Nothing

End If
"La soledad es el elemento de los grandes talentos".
Cristina de Suecia (1626-1689) Reina de Suecia.

Jareth

Ok,muchas gracias ya lo entendi.De verdad mil gracias me ayudaste mucho CeLaYa.
Saludos.

ranslsad

Hola amigos, tengo una duda ya que, me sale:


Run Time Error '3251':

Operacion No Valida para este tipo de objeto


Y me sale en el error aqui:

Private Sub Command1_Click()
Dim bd As Database
Dim tb As Recordset
Set bd = Workspaces(0).OpenDatabase("C:\Documents and Settings\Administrador\Escritorio\Chat Visual Basic\Servidor\db\cuentas.mdb")
Set tb = bd.OpenRecordset("tabla1")
tb.MoveFirst ' Movemos el puntero al inicio de la tabla
'Estableces el criterio de búsqueda
tb.FindFirst (User = "" & Text1.Text & "" And pass = "" & Text2.Text & "'")

If tb.NoMatch Then
   ' No se encotro el usuario
   MsgBox ("Datos incorrectos")
Else
   Form3.Show
End If

tb.Close
bd.Close
Set tb = Nothing
Set bd = Nothing

End Sub

Bueno espero que alguien pueda ayudarme...

Salu2

Ranslsad

Jareth

Asi a simple vista vewo que usas doble comillas "",y no es asi,fijate en el ejemplo de CeLaYa,usa una doble comilla y un ' .No como tu que usas dos ".
Prueba cambiando eso.

ranslsad

Ahi me sale errores de esas mismas comillas.. :S por eso yo las cambie por "comillas" pero antes estaba esto'

Bueno.. aun no e podido resolver mi duda :(

Salu2

Ranslsad


Hans el Topo

se supone que tu le tienes que enviar una string... por lo tanto estas uniendo cadenas ... concepto básico de vb ...

"cadenita con chorraditas" & " en sentencias se utiliza la comilla simple para comparar strings  pepe = 'pony'  "

ahora componemos una sentencia


                                        'comilla simple           'comilla simple
"select manolito from manolitos where nombre='" & variablecnombre & "'"


 

ranslsad

Bueno gracias, pero ya lo e dejao a los MDB como e estado 4 dias entancado, pues el registro se guarda en txt y luego se lee normal.. asi no me lio tanto y es facil!!

Aun asi muchisimas gracias ;)

Salu2

Ranslsad