Después de examinar el código que hizo un compañero de nuestro foro, en el cual mostraba e insertaba datos de una base de datos MySQL, conseguí hacerlo con una base de datos que tenia yo en una pagina web.
Ahora intento hacer un loggin desde los datos de la web. El problema es que tengo un campo con usuario y otro con contraseña. Toma los dos datos de sus respectivos campos y lo siguiente seria cargar otro form si el loggeo es correcto. Pero ahora por el momento pues estaba intentado que si el loggeo era correcto, que en el campo de usuario pusiese correcto y si no, pues error. El problema es que cuando teóricamente tiene que enviar la consulta me devuelve Object:Null o algo por el estilo... Y no entiendo porque... Alguien me podría ayudar?
Si queréis pongo el código que tengo hecho, aunque aviso, es un desastre porque estoy aprendiendo y esta llenos de comentarios y cosas raras!
Un saludo a todos!
----------------
Editado
--------------------------------
Hola, buenos dias a todos.
Ahora que he tenido un momentito, he limpiado un poco el codigo, y os lo pongo aqui para que me ayudeis.
Como vereis va a tener un monton de cosas que no tienen lógica. Y otros comentarios que son los de la aplicacion que me descargue de nuestro compañero en el cual agregaba a una tabla nombre y edad.
' gambas class file
PUBLIC conectar AS Connection ''Declaracion de Variable para la coneccion
PUBLIC id AS String
PUBLIC nombre AS String
PUBLIC usuario AS String
PUBLIC contrasenya AS String
PRIVATE FUNCTION login(query AS String) AS Result ''Funcion para conectar base de datos y ejecutar una sentencia
DIM resultado AS Result
conectar = NEW Connection
conectar.close
conectar.Type = "mysql"
conectar.Host = "direccion"
conectar.User = "usuario"
conectar.Password = "contraseña"
conectar.Name = "nombreBD"
conectar.Open
resultado = conectar.Exec(query)
RETURN resultado
END
PRIVATE SUB enviarDatos() ''es un tipo de funcion pero no retorna valor es para cargar los datos a la ColumnView
DIM resultado AS Result
DIM n AS Integer
resultado = conectar("SELECT id,usuario,contrasenya,nombre FROM tabla WHERE usuario='" & usuario_txt.Text & "' AND contrasenya='" & contrasenya_txt.Text & "'") ''Llamo a la funcion coneccion y envio la sentencia
FOR n = 0 TO resultado.Count - 1 STEP +1 ''Sistema de repeticion para agregar los datos a la columna
IF resultado!usuario = usuario_txt.Text AND IF resultado!contrasenya = contrasenya_txt.Text THEN
id = resultado!id
nombre = resultado!nombre
usuario = resultado!usuario
contrasenya = resultado!contrasenya
ELSE
usuario_txt.Text = "error"
END IF
NEXT
conectar.Close ''Cierro la coneccion
END
PUBLIC SUB Button1_Click()
Message(usuario_txt.Text)
enviarDatos()
''login.Close
''formularioMadre.Show
END
PUBLIC SUB Form_Open()
END
PUBLIC conectar AS Connection ''Declaracion de Variable para la coneccion
PUBLIC id AS String
PUBLIC nombre AS String
PUBLIC usuario AS String
PUBLIC contrasenya AS String
PRIVATE FUNCTION login(query AS String) AS Result ''Funcion para conectar base de datos y ejecutar una sentencia
DIM resultado AS Result
conectar = NEW Connection
conectar.close
conectar.Type = "mysql"
conectar.Host = "direccion"
conectar.User = "usuario"
conectar.Password = "contraseña"
conectar.Name = "nombreBD"
conectar.Open
resultado = conectar.Exec(query)
RETURN resultado
END
PRIVATE SUB enviarDatos() ''es un tipo de funcion pero no retorna valor es para cargar los datos a la ColumnView
DIM resultado AS Result
DIM n AS Integer
resultado = conectar("SELECT id,usuario,contrasenya,nombre FROM tabla WHERE usuario='" & usuario_txt.Text & "' AND contrasenya='" & contrasenya_txt.Text & "'") ''Llamo a la funcion coneccion y envio la sentencia
FOR n = 0 TO resultado.Count - 1 STEP +1 ''Sistema de repeticion para agregar los datos a la columna
IF resultado!usuario = usuario_txt.Text AND IF resultado!contrasenya = contrasenya_txt.Text THEN
id = resultado!id
nombre = resultado!nombre
usuario = resultado!usuario
contrasenya = resultado!contrasenya
ELSE
usuario_txt.Text = "error"
END IF
NEXT
conectar.Close ''Cierro la coneccion
END
PUBLIC SUB Button1_Click()
Message(usuario_txt.Text)
enviarDatos()
''login.Close
''formularioMadre.Show
END
PUBLIC SUB Form_Open()
END
Lo del usuario, contraseña, el nombre de la tabla y todo eso, lo he cambiado por seguridad.
Lo digo por si alguien piensa que el error de conexión es ese.