• Lunes 12 de Mayo de 2025, 17:25

Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.


Mensajes - robbie110487

Páginas: 1 [2] 3
26
ASP .NET / Re: Login Con Base De Datos "sql Server 2005"
« en: Lunes 7 de Mayo de 2007, 22:28 »
Gracias por la info me sirvio de mucho, pero al final use esto:
Código: Text
  1. ' Función para comprobar si el acceso es correcto
  2.     Private Function ComprobarUsuario(ByVal usuario As String, ByVal contrasena As String) As Boolean
  3.  
  4.         ' Conectar a la base de datos
  5.         Dim cnn As SqlConnection = Nothing
  6.         Try
  7.             cnn = New SqlConnection(Me.SqlDataSource1.ConnectionString)
  8.             cnn.Open()
  9.  
  10.             ' Definir la cadena que vamos a usar para comprobar
  11.             ' si el usuario y el password son correctos.
  12.             ' Utilizo parámetros para evitar inyección de código.
  13.             Dim sel As New System.Text.StringBuilder
  14.  
  15.             ' Usando COUNT(*) nos devuelve el total que coincide
  16.             ' con lo indicado en el WHERE,
  17.             ' por tanto, si la clave y el usuario son correctos,
  18.             ' devolverá 1, sino, devolverá 0
  19.             sel.Append("SELECT COUNT(*) FROM Empleados ")
  20.             sel.Append("WHERE usuario = @usuario AND contrasena = @contrasena")
  21.  
  22.             ' Definir el comando que vamos a ejecutar
  23.             Dim cmd As New SqlCommand(sel.ToString, cnn)
  24.  
  25.             ' Creamos los parámetros
  26.             cmd.Parameters.Add("@usuario", SqlDbType.NVarChar, 16)
  27.             cmd.Parameters.Add("@contrasena", SqlDbType.NVarChar, 16)
  28.  
  29.             ' Asignamos los valores recibidos como parámetro
  30.             cmd.Parameters("@usuario").Value = usuario
  31.             cmd.Parameters("@contrasena").Value = contrasena
  32.  
  33.             ' Ejecutamos la consulta
  34.             ' ExecuteScalar devuelve la primera columna de la primera fila
  35.             ' por tanto, devolverá el número de coincidencias halladas,
  36.             ' que si es 1, quiere decir que el usuario y el password son correctos.
  37.             Dim t As Integer = CInt(cmd.ExecuteScalar)
  38.  
  39.             ' Cerramos la conexión
  40.             cnn.Close()
  41.  
  42.             ' Si el valor devuelto es cero
  43.             ' es que no es correcto.
  44.             If t = 0 Then
  45.                 Return False
  46.             End If
  47.  
  48.             'Capturamos una excepcion por si hay error en la conexion
  49.         Catch ex As Exception
  50.             lblError.Text = "Error " & ex.Message
  51.             Return False
  52.         Finally
  53.             'Si la conexion esta cerrada, la destruimos
  54.             If Not cnn Is Nothing Then
  55.                 cnn.Dispose()
  56.             End If
  57.         End Try
  58.  
  59.         ' Si llega aquí es que todo ha ido bien
  60.         Return True
  61.     End Function
  62.  

Y luego mando llamar a la funcion asi:
Código: Text
  1. Protected Sub Login1_Authenticate(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.AuthenticateEventArgs) Handles Login1.Authenticate
  2.         If ComprobarUsuario(Login1.UserName, Login1.Password) = True Then
  3.             e.Authenticated = True
  4.         Else
  5.             e.Authenticated = False
  6.         End If
  7.     End Sub
  8.  

Me va de maravilla, saludos y gracias a los 2  :comp:

27
ASP .NET / Login Con Base De Datos "sql Server 2005"
« en: Sábado 5 de Mayo de 2007, 08:07 »
Hola, estoy realizando una aplicacion de practica para la empresa donde estoy actualmente, tecnicamente ya la he terminado, solo quisiera que me ayudaran con el sistema de logueo, cual es la mejor forma de hacerlo? con el control login? o con textbox y botones aparte??.
ya puse el control login y lo he personalizado y tmb hice la coneccion mediante un data source, ahra quisiera saber que comando utilizar para comparar usuario y password en una tabla de una base de datos que tengo en SQL SERVER 2005, cualquier ayuda es bien recibida.

Por cierto utilizo Microsoft Visual Studio 2005 Proffessional y como lenguaje Visual Basic

SAludos

28
C/C++ / Re: Ayuda Urgente!!!!
« en: Lunes 11 de Septiembre de 2006, 00:08 »
Opino algo similar a Max_D ya que tu codigo me compilo en el minGW (Bajo dev c++) sin ningun problema (excepto el de conio pero eso no es importante), realmente no se que pueda pasar amigo, cambia de compilador :S

Si de plano no te funciona lo que podrias hacer es declarar la funcion tipo int, y que te reorne 1 si es verdadero y 0 si es falso o algo asi...

Saludos

29
C/C++ / Re: Ayuda Urgente!!!!
« en: Domingo 10 de Septiembre de 2006, 22:22 »
Creo que ya analizando el codigo encontre el error, mira en esta parte:
Código: Text
  1. void agregar();
  2. void crear();
  3. void eliminar();
  4. void imprimir();
  5.  
estas declarando todas las funciones menos la boolean, agregala por ahi a ver si es eso, algo asi:
Código: Text
  1. void agregar();
  2. void crear();
  3. void eliminar();
  4. void imprimir();
  5. bool vacia();
  6.  

Saludos  :comp:

30
C/C++ / Re: Ayuda Urgente!!!!
« en: Domingo 10 de Septiembre de 2006, 09:40 »
Por favor pon el error que te da, como no tengo nada que hacer lo compile y me dio este:
Citar
main must return int
que por lo visto no es el mismo que te da a ti, supongo que usaras algun compilador de borland, a mi con el minGW me compilo bien solo en la linea
Código: Text
  1. main()
  2.  
la cambie por
Código: Text
  1. int main()
  2.  
y coloce un
Código: Text
  1. return 0;
  2.  
al final de la funcion, por lo demas no me dio error.

Saludos

31
C/C++ / Re: Error De Sintaxis (boolean)
« en: Domingo 10 de Septiembre de 2006, 09:33 »
Hola, mira pueden ser 2 cosas (o mas que se me esten pasando jeje)

1.- Debido a que bool es esclusivo de c++, es decir no existe en C verifica que el compilador que uses soporte c++ y que el archivo sea .cpp (esta es la menos probable).

2.- La otra es: recuerda que es una funcion, esta debe ir fuera de otras funciones, hasta de main ok, quedaria algo mas o menos asi: (fue lo primero que se me ocurrio es solo un ejemplo)
Código: Text
  1. #include<stdio.h>
  2. int* estudiante;
  3. bool vacia()
  4. {
  5.          if(estudiante=NULL)
  6.              return true;
  7.          else
  8.              return false;
  9. }
  10. int main()
  11. {
  12.     vacia();
  13.     getchar();
  14.     return 0;
  15. }  
  16.  


Saludos

32
Visual Basic 6.0 e inferiores / Re: Mostrar Una Secuencia Regresiva.
« en: Lunes 14 de Agosto de 2006, 00:14 »
O algo asi se me hace mucho mas facil, mira agrega un label y un timer, y cambia la propiedad de interval de ltimer a 1000
Código: Text
  1. Dim x As Byte
  2. Private Sub Form_Load()
  3.     x = 10
  4. End Sub
  5. Private Sub Timer1_Timer()
  6.     If x = 0 Then Exit Sub
  7.     Label1.Caption = x
  8.     x = x - 1
  9. End Sub
  10.  

Saludos

33
C/C++ / Re: Herrores En Compilacion
« en: Sábado 1 de Julio de 2006, 20:19 »
Pues en tu post yo nomas veo dos errores, uno de ortografia y otro en el codigo  :lol:   jeje

el error es aqui:
Código: Text
  1. printf("GET /cgi-bin/Count.cgi?%s\n\n",qs);
  2.  

Primero que nada, ¿Sabes que hace el programa o para que sirve?


salu2  :hola:

34
Java / Re: Joptionpane
« en: Miércoles 21 de Junio de 2006, 07:18 »
<_<  Si quieres que se un dialogo, crea una clase que herede de JDialog y la disenas que quede similar al JOptionPane.showInputDialog solo cambiaz el JTextField por JPasswordField, es lo que yo haria  :)

salu2

35
C/C++ / Re: Typedef
« en: Sábado 10 de Junio de 2006, 18:32 »
Asi es, exactamente como lo has definido, puedes usar cualquiera de las 2, pero en caso de que no sea anonima, puedes usar el nombre de la estructura o el alias...

36
C/C++ / Re: Typedef
« en: Sábado 10 de Junio de 2006, 17:44 »
El primer codigo corresponde a una estructura anonima que puede utilizarse a traves de su typedef
Ejemplo:

Código: Text
  1. typedef struct {double re, im; } COMPLEX;
  2. ......
  3. COMPLEX c, *ptrc, arrc[10]
  4.  

Y en el segundo codigo estas poniendo nombre a la estructura al mismo tiempo que se declara el typedef
Ejemplo:

Código: Text
  1. typedef struct C1 {double re, im;} COMPLEX;
  2. ...
  3. C1 c, *ptrc;
  4. COMPLEX Arrc[10];
  5.  

Aunque no es usual utilizar el alias y el nombre simultaneamente.

Fuente y para mas info sobre typedef : http://www.zator.com/Cpp/E3_2_1a.htm

Un saludo  :hola:

37
Visual Basic 6.0 e inferiores / Re: Rober.29 Necesito Un Poco De Tu Ayuda
« en: Viernes 9 de Junio de 2006, 21:20 »
Me alegro que ya lo hayas solucionado, es mas acabo de leer el topic que mencionas donde ROBER.29 ayuda a bea en exactamente lo mismo, y hace mension de que si no tienes  la libreria cdonts.dll le mandaras un MP y el te la enviaba, justo te iba a recomendar que le pidieras, si seguias sin poder enviar el MP yo lo hubiera hecho y te la enviaba por correo.

Veo que eres nuevo y acostumbrate un poco a las discusioes, espero sigas apoyando en el foro que si hace falta gente, ya que como lei en otro foro, la regla es venir pedir ayuda y no volver a postear hasta el siguiente problema... espero no sea tu caso y no dejes que una pequena discusion te aleje del foro, no todos somos iguales...

Saludos desde Tamaulipas Mexico  :hola:

38
Visual Basic 6.0 e inferiores / Re: Rober.29 Necesito Un Poco De Tu Ayuda
« en: Jueves 8 de Junio de 2006, 18:58 »
jeje, asi es el x.cyclop lo conozco en 3 foros  :D , pero en parte tiene razon, por cierto has tratado de hacer lo que dice el link del msdn??
Citar
Causa
Este problema se produce porque utiliza DLL de Outlook Express CDOSYS, y CDONTS y CDOEX para cargar la información de configuración CDOSYS, y CDONTS y CDOEX.
 Volver al principio

Solución
Para resolver este problema, siga estos pasos: 1. Instale Outlook Express si no se instala todavía. Para ello, siga estos pasos: a.  En Panel de control, haga clic en Agregar o quitar programas.
b.  Haga clic en Internet Explorer y a continuación, seleccione Outlook Express como se instala el componente.
 
2. Si Outlook Express ya está instalado en su equipo y si recibe uno de los errores mencionados en la sección "Síntomas" de este artículo, siga estos pasos: a.  Quite Internet Explorer de su equipo.

También esto quita Outlook Express.
b.  Reinstale Internet Explorer. Durante instalación, seleccione instalar Outlook Express.
 
3. Si recibe los errores mencionados en la sección "Síntomas" de este artículo después de que instala o después de que reinstala Internet Explorer y Outlook Express, siga estos pasos: • En un equipo que ejecuta Windows 2000, ejecute los comandos siguientes en un símbolo del sistema para registrar Cdonts.dll y Cdosys.dll:

"\WINNT\System32\CDOSYS.dll regsvr32 \WINNT\System32\CDONTS.dll "regsvr32""
• Ejecutado el comando siguiente en un símbolo del sistema de registrar Cdonts.dll:

"\WINNT\System32\CDONTS.dll" regsvr32
• En un equipo que ejecuta Windows XP o Windows Server 2003, ejecute el comando siguiente en un símbolo del sistema para registrar Cdosys.dll:

"\WINDOWS\System32\CDOSYS.dll" regsvr32
• En un equipo que ejecuta Microsoft Exchange 2000 Server, Exchange Server 2003, Microsoft Sharepoint Portal Server o Microsoft Sharepoint Team Services, ejecute el comando siguiente en un símbolo del sistema para registrar Cdoex.dll:

"\Program Files\Common Files\Microsoft Shared\CDO\CDOEX.dll" regsvr32 

si es asi te sigue marcando algun error??


Un saludo  :hola:

PD: Aqui tienes un link directo para un mensaje privado a ROBER.29
MP a ROBER.29

Solo es cuestion de ver los botones del foro  :comp:

39
C/C++ / Re: Explicacion A Este Codigo
« en: Jueves 8 de Junio de 2006, 00:00 »
Claro que si cybregatita, antes nada debes entender que es el factorial de un numero, se puede definir  como el producto de todos los números naturales anteriores o iguales a él. Se escribe n!, y se lee "n factorial". (Por definición el factorial de 0 es 1: 0!=1)

Código: Text
  1. #include<stdio.h>  //Libreria para printf() y scanf()
  2. #include<stdlib.h>  //Libreria para system()
  3.  
  4. /**Funcion factorial, recibe un entero con punto flotante*/
  5. float factorial(float N)
  6. {
  7.     if (N == 0) return 1;  //Si N es igual a 0 retorna el numero 1
  8.                            //(porque el factorial de 0 es 1)
  9. else                         //de lo contrario
  10.     //retorna la multiplicacion de N por el factorial de N-1
  11.     //Si te fijas la funcion es llamada hasta que el factorial se igual a 0 o
  12.     //mejor dicho a 1
  13.     return N*factorial(N-1);  
  14. }
  15.  
  16.  
  17. /*Funcion principal*/
  18. int main ()
  19. {
  20.     float N;
  21.     printf("\n CALCULO DE FACTORIALES \n");
  22.     printf("\nIntroduzca un numero entero:\n");
  23.     scanf("%f", &N);  //Aqui se pide el numero
  24.     printf("\El Factorial es %f", factorial(N)); //Aqui se llama a la funcion
  25.     system("pause"); //lo agregue para hacer una pausa
  26.     return(0);   //lo modifique porque no me compilaba
  27. }
  28.  

Cualquier duda postea  :hola:

Pd. lo modifique un poco, pero en si sigue siendo el mismo codigo :)

40
Pascal / Re: Sintaxis De Colores
« en: Miércoles 7 de Junio de 2006, 07:25 »
Jugar??

Sabes, yo creo te refieres al editor que trae el compilador freepascal, que senala la sintaxis y la colorea como tu dices, lo encuentras aqui:
FREE PASCAL

Un saludo  :hola:

41
C/C++ / Re: Duda Con Este Codigo
« en: Lunes 5 de Junio de 2006, 01:03 »
La verdad no se, las unica diferencia que yo conozco entre scanf() y gets(), es que scanf() es entrada con formato:

Código: Text
  1. char *gets(char *cadena);
  2.  

Citar
Esta función lee caracteres desde el stream apuntado por stream stdin, en el array apuntado por cadena, hasta que se encuentre un final de fichero (EOF) o un carácter de línea nueva es leído. Cualquier carácter de línea nueva es descartado, y un carácter nulo es escrito inmediatamente después del último carácter leído en el array.



Código: Text
  1. int scanf(const char *formato, ...);
  2.  

Código: Text
  1. Esta función es equivalente a fscanf con el argumento stdin interpuesto antes de los argumentos a scanf.
  2.  

Citar
fscanf
Esta función recibe datos del stream apuntado por stream, bajo el control de la cadena apuntada por formato que especifica las secuencias de entrada permitadas y cómo han de ser convertidas para la asignación. Si hay argumentos insuficientes para el formato, el comportamiento no está definido. Si el formato termina mientras quedan argumentos, los argumentos restantes son evaluados (como siempre) pero ignorados. La función retorna control cuando el final de la cadena de formato es encontrado.

Fuente http://c.conclase.com

Tmb see que scanf solo lee una cadena hasta que encuentra un espacio a diferencia de gets()...
 :comp:

Un saludo  :hola:

42
C/C++ / Re: Duda Con Este Codigo
« en: Domingo 4 de Junio de 2006, 21:07 »
Hola, ese codigo esta bien, el error esta cuando limpias el buffer de entrada, la sentencia correcta es
Código: Text
  1. fflush(stdin);
  2.  

el codigo deberia quedar asi:

Código: Text
  1. #include <stdio.h>
  2. #include <windows.h>
  3.  
  4. typedef int integer;
  5. typedef char string[255];
  6.  
  7. int main()
  8. {
  9.    integer num;
  10.    string cadena;
  11.    printf("Introduce un numero: ");
  12.    scanf("%i",&num);
  13.    printf("Introduce un mensaje: ");
  14.    fflush(stdin);
  15.    gets(cadena);
  16.    printf("El numero introducido es %i",num);
  17.    printf("\nEl mensaje introducido fue %s\n\n",cadena);
  18.    system("pause");
  19.    return 0;
  20. }
  21.  

Compilalo asi y veras que va de maravilla...

Un saludo  :hola:

43
C/C++ / Re: ¿buffer De Entrada?
« en: Domingo 4 de Junio de 2006, 06:56 »
Querras decir: indica hacer las cosas mientras el caracter obtenido sea diferente  a un salto de linea  :rolleyes:

Saludos  :hola:

44
C/C++ / Re: Un Readln Para C
« en: Domingo 4 de Junio de 2006, 06:53 »
Claro que gets() es standar, se encuentra en la liberia stdio.h y lee caracteres desde el stream apuntado por stream stdin, en el array apuntado por cadena, hasta que se encuentre un final de fichero (EOF) o un carácter de línea nueva es leído...


no la confundas con getch() o getche() de la libreria no standar conio.h

Un saludo  :hola:

45
C/C++ / Re: Otra Manera De Hallar Numeros Primos
« en: Sábado 3 de Junio de 2006, 22:25 »
Encontre esta, pero en c++ y es de 20 a 100, ya solo tienes que pasarla a c, no es dificil

Código: Text
  1. #include<iostream>
  2. #include<iomanip>
  3.  
  4. using namespace std;
  5.  
  6. int main()
  7. {  
  8.    cout<<"Numeros primos entre 20 y 100:"<<endl;
  9.  
  10.    int i;
  11.    for(int n=23; n<100; n++)
  12.    {  
  13.       for(i=2; n%i; i++);
  14.       if(i==n) cout<<setw(4)<<n;
  15.    }
  16.    cout<<endl;
  17.    cin.get();
  18.    return 0;
  19. }
  20.  

46
C/C++ / Re: Se Demora En Compilar
« en: Sábado 3 de Junio de 2006, 06:19 »
De cuantos segundos de demora estamos hablando?? y que tan grande es el codigo que quieres compilar??, si vas a herramientas/opciones del compilador encontraras algunas opciones de optimizacion y rendimiento, solo es cuestion de verlas y revisarlas

un saludo

47
C/C++ / Re: Duda Al Compilar
« en: Viernes 2 de Junio de 2006, 03:30 »
Todo va perfecto, solo que tiene un "error" (que no es exactamente error) :P, lo comprobe con este programa:
Código: Text
  1. #include<stdio.h>
  2. #include<stdlib.h>
  3. int main()
  4. {        float a,b;
  5.          int op;
  6.           fflush(stdin);
  7.          printf("Ingresa dos numeros: ");
  8.          scanf("%f %f",&a,&b); // aqui quite la coma pero deje un espacio entre "%f" y "%f"
  9.          printf(" Elige la operacion que deseas realizar\n\n");
  10.          printf("   1. Suma\n");
  11.          printf("   2. Resta\n");
  12.          printf("   3. Multiplicacion\n");
  13.          printf("   4. Division\n");
  14.          printf("   5. Salir\n\n");
  15.          printf(" ¿Que operacion deseas realizar?(1-5): ");
  16.          scanf("%i",&op);
  17.          printf("\nEl primer numero es: %f\n",a);
  18.          printf("El segundo numero es: %f\n",b);
  19.          printf("Y seleccionaste la opcion numero: %i\n",op);
  20.          system("pause");
  21. }
  22.  

Espero sigas asi y continues con tu proyecto

Un saludo

48
C/C++ / Re: ¿?
« en: Viernes 2 de Junio de 2006, 03:13 »
La funcion Sleep() (no sleep()) se encuentra en la libreria windows.h

Saludos

49
C/C++ / Re: Un Readln Para C
« en: Jueves 1 de Junio de 2006, 22:49 »
Claro que si

Código: Text
  1. fflush(stdin)
  2.  

esa linea limpia el buffer del teclado

Un saludo

50
C/C++ / Re: Suma De Fracciones En Turbo C++
« en: Domingo 7 de Mayo de 2006, 08:05 »
eso de while(frac<5) esta mal condicionado, en dado caso seria

Código: Text
  1. while(frac&#60;=5)
  2. {
  3. ....
  4. }
  5.  

y ni asi cumple con la condicion, que tal si teclea 1 o 0 , mejor que lo haga con varios if, o en su defecto con un switch, asi solo pondria

Código: Text
  1. switch(frac)
  2. {
  3.     case frac:2
  4.        sumardosfracciones;
  5.        break;
  6.     case frac:3
  7.        sumartresfracciones;
  8.        break;
  9.     case frac:4
  10.        sumarcuatrofracciones;
  11.        break;
  12.     case frac:5
  13.        sumarcincofracciones;
  14.        break;
  15.     case frac:default
  16.        mostrarmensajedeerror;
  17. }
  18.  

salu2  :hola:

Páginas: 1 [2] 3