none
¿Como copiar directorio de una imagen para depositarlo en mi base de datos? RRS feed

  • Pregunta

  • Hola buenas tardes. Soy nuevo en esto y no tengo mucha experiencia con la programación, estoy realizando un programa que capture datos de los usuarios para mandarlos a una base de datos, tengo un botón que me permite abrir y mostrar una imagen en pantalla, pero quiero que el botón me copie la dirección de la imagen para después mandarla mediante un botón de guardado.

    Aquí dejo algunas capturas de pantalla (C#):

    Este es el codigo de mi boton "Seleccionar":

    y este es mi código con el que guardo los datos ingresados en los txtbox:

    Cabe mencionar que si agrego un txtbox y pongo la dirección de la imagen, al momento de darle guardar, almacena correctamente la ruta en la base de datos y la devuelve al momento de consultarla en mi programa, es asi como se muestra en el codigo de la captura solo que coloque el txtbox en la parte inferior , no se como hacer para que la copie desde un botón.

    Espero que puedan ayudarme y gracias de antemano. 

    lunes, 12 de agosto de 2019 18:03

Todas las respuestas

  • hola

    podrias poner el codigo como texto en lugar de imagenes ?

    ademas porque invocas el procedure de esa forma, esta mal, debes usar parametros

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    lunes, 12 de agosto de 2019 18:16
  • public override Boolean Guardar()
            {
                if (Utilidades.ValidarFormulario(this, errorProvider1) == false)
                {
                    try
                    {
                        string cmd = string.Format("EXEC ActualizaUsuarios '{0}', '{1}', '{2}', '{3}', '{4}', '{5}'", txtidus.Text.Trim(), txtnom.Text.Trim(), txtnomus.Text.Trim(), txtpass.Text.Trim(), txtper.Text.Trim(), txtfoto.Text.Trim());





                        Utilidades.Ejecutar(cmd);
                        MessageBox.Show("Se ha guardado correctamente");
                        return true;
                    }
                    catch (Exception error)
                    {
                        MessageBox.Show("Ha ocurrido un error: " + error.Message);
                        return false;
                    }
                }
                else
                {
                    return false;
                }
            }   

                                                            

    {

     private void button1_Click(object sender, EventArgs e)
            {



                try
                {
                    if (openFileDialog1.ShowDialog() == DialogResult.OK)
                    {
                        string imagen = openFileDialog1.FileName;
                        pictureBox1.Image = Image.FromFile(imagen);

                    }
                }
                catch (Exception ex)
                {
                    MessageBox.Show("El archivo seleccionado no es un tipo de imagen válido");
                }

            }

    lunes, 12 de agosto de 2019 19:24
  • hola

    bien, para el tema de acceder a la ruta de la imagen existe la propiedad Tag donde conservar el dato

                   if (openFileDialog1.ShowDialog() == DialogResult.OK)
                    {
                        string imagen = openFileDialog1.FileName;
                        pictureBox1.Image = Image.FromFile(imagen);
    
                         pictureBox1.Tag = imagen;
                    }


    entocnces cuando necesites la ruta a la imagen lo tomas desde alli

    string rutaImg = pictureBox1.Tag.ToString();


    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    lunes, 12 de agosto de 2019 21:03
  • Por otro lado tu codigo es incorrecto al insertar

    No se que haces en Utilidades.Ejecutar() pero sino permite parametros descarta esa funcionalidad

    tu codigo deberias ser como

    using (SqlConnection conn = new SqlConnection("connectionstring")) 
    { 
        SqlCommand cmd = new SqlCommand("ActualizaUsuarios", conn); 
        cmd.CommandType = SqlCommandType.StoredProcedure; 
    
        cmd.Parameters.AddWithValue("@idus", txtidus.Text); 
        cmd.Parameters.AddWithValue("@nom", txtnom.Text);
        //resto parametros
        
        cmd.ExecuteNonQuery();
    } 

    no se concatena NUNCA los valores en un string

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    lunes, 12 de agosto de 2019 21:06