Comunidad Gambas-es
Codigo QR en un WebForm - Versión para impresión

+- Comunidad Gambas-es (https://gambas-es.org)
+-- Foro: Gambas (https://gambas-es.org/forum-3.html)
+--- Foro: WebApp/WebForms (https://gambas-es.org/forum-23.html)
+--- Tema: Codigo QR en un WebForm (/thread-463.html)

Páginas: 1 2


Codigo QR en un WebForm - Herberth - 13-06-2021

Saludos grupo.

Necesito ayuda

Estoy utilizando gb-web-gui y tengo un formulario webform y un webtextbox.

Necesito mostrar el codigo QR de la cadena ingresada en el webtextbox.
Alguien que pueda ayudarme por favor.

Muchas gracias.


RE: Codigo QR en un WebForm - gambafeliz - 13-06-2021

Mira haber si esto te sirve:
https://www.linux-magazine.com/Online/Features/Generating-QR-Codes-in-Linux

http://qrcode.osdn.jp/index.html.en

O en Google busca algo como code QR library linux

Espero que te sirva, sino pues por lo menos he intentado ayudarte.


RE: Codigo QR en un WebForm - tincho - 13-06-2021

(13-06-2021, 19:49)Herberth escribió: Necesito mostrar el codigo QR de la cadena ingresada en el webtextbox.

En la granja existe un proyecto llamado, QRCreator 2.0.0 del compañero Cogier luego también hay otro programa que hace lo mismo pero es de Jsbsan en: https://jsbsan.blogspot.com/2014/03/actualizacion-para-gambas3-generador-de.html
No se como trabajan estos programas pero seguramente generen una imagen.png o similar que luego muestran en un control.
Podrías adaptar el código de alguno de estos programas para generar la imagen y mostrarla en tu webform.
Saludos.


RE: Codigo QR en un WebForm - Herberth - 14-06-2021

Muchas gracias gambafeliz y tincho.

He visto la libreria y he probado el codigo a nivel de escritorio y todo bien. Lo que necesito es que me trabaje en ambiente web. Es aqui donde no puedo. Si fuera web y a nivel de escritorio si. Pero tengo un servidor apache levantado y no he podido hacerlo.


RE: Codigo QR en un WebForm - tincho - 15-06-2021

(14-06-2021, 17:02)Herberth escribió: Lo que necesito es que me trabaje en ambiente web. Es aqui donde no puedo

Bien pero tendrás un webform no? en ese caso podrás cargar una imagen (la del QR)a un control no?
Sube el proyecto para echar un vistazo.
Saludos.


RE: Codigo QR en un WebForm - jguardon - 15-06-2021

Puedes usar alguna librería o ejecutable en linux que genere la imagen para luego en el webform poder mostrarla.

Otra alternativa es usar javascript y algún plugin para generarlo dinámicamente al cargar la página en el navegador. Con una simple búsqueda encontré esto:

https://www.jqueryscript.net/other/jQuery-Plugin-For-Creating-QR-Codes-On-Your-Website-ClassyQR.html

Necesitas, eso sí, incluir JQuery en las cabeceras para que este pequeño plugin pueda funcionar.

Espero que esto te pueda ayudar, saludos


RE: Codigo QR en un WebForm - omoreno - 15-06-2021

Hola Herberth.

Ciertamente como te ha comentado jguardon, con librerías javascript puedes mostrar códigos QR con los datos contenidos en un objeto webtextbox.

Aquí tienes otra librería para generar los códigos QR: kjua

Yo estoy practicando con este IDE:
[Imagen: gNmry5a.png]
Cita:Pero tengo un servidor apache levantado y no he podido hacerlo.

Si tienes y pudieras compartir algún manual paso a paso de todo lo necesario para montar ese servidor Apache en Ubuntu o Linux Mint y también como correr Gambas con los WebForm... ya después me tocaría ver si puedo en una Raspberry PI   Rolleyes ...

Saludos.


RE: Codigo QR en un WebForm - Herberth - 19-06-2021

Jguardon, omoreno muchas gracias por la información brinda. Tengo un codigo funcional con js que me funciona pero con webpage, y yo lo necesito en un webform y el webtexbox muestre un registro de una db. Si pudieras enviarme un ejemplo de como lo haces te lo voy agradecer.


RE: Codigo QR en un WebForm - Herberth - 24-06-2021

(15-06-2021, 21:50)omoreno escribió: Si tienes y pudieras compartir algún manual paso a paso de todo lo necesario para montar ese servidor Apache en Ubuntu o Linux Mint y también como correr Gambas con los WebForm... ya después me tocaría ver si puedo en una Raspberry PI   Rolleyes ...
 
Configurar Apache y usar aplicaciones Gambas3 WEB con WebForm y CGI
 
Instalar

1- Instalar Apache2

sudo apt install apache2
 
2- Instalar Gambas3
sudo apt install gambas3

Preparar entorno

3- Crear carpeta en donde guardaras tu ejecutable
Ejemplo
/home/herberth/www/cgi-bin

4- Cambia los permisos de la carpeta
Ejemplo
sudo chmod +x -R /home/herberth/www/cgi-bin

Configurar Apache2 para Gambas

5- Editar el archivo /etc/apache2/conf-available/serve-cgi-bin.conf
Ejemplo
sudo nano /etc/apache2/conf-available/serve-cgi-bin.conf

Mi archivo lo tengo de esta manera, solo debes de cambiar la ruta de tu entorno

 
<IfModule mod_alias.c>
    <IfModule mod_cgi.c>
        Define ENABLE_USR_LIB_CGI_BIN
    </IfModule>

    <IfModule mod_cgid.c>
        Define ENABLE_USR_LIB_CGI_BIN
    </IfModule>

    <IfDefine ENABLE_USR_LIB_CGI_BIN>
        ScriptAlias /cgi-bin/ /home/herberth/www/cgi-bin/
        <Directory "/home/herberth/www/cgi-bin">
            AllowOverride None
            Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
            AddHandler cgi-script .cgi .py .gb
            Require all granted
        </Directory>
    </IfDefine>
</IfModule>


6- Activa CGI en Apache2
Ejemplo
sudo a2enmod cgi

 
7- Iniciar o Reiniciar Apache2
Ejemplo

sudo systemctl restart apache2
o
sudo systemctl start apache2

8- Copiar  el archivo ejecutable en la carpeta cgi-bin del entorno que has creado
Ejemplo
cp /home/herberth/miproyectoweb/miproyectoweb.gambas /home/herberth/www/cgi-bin

 
9- Abrir tu navegador y ejecutar tu aplicación
Ejemplo

http://localhost/cgi-bin/miproyectoweb.gambas
o
http://tu-ip/cgi-bin/miproyectoweb.gambas

Y lo mismo debes de hacer con tu servidor virtual para ejecutar tu aplicación.



RE: Codigo QR en un WebForm - omoreno - 24-06-2021

(19-06-2021, 03:37)Herberth escribió: Jguardon, omoreno muchas gracias por la información brinda. Tengo un codigo funcional con js que me funciona pero con webpage, y yo lo necesito en un webform y el webtexbox muestre un registro de una db. Si pudieras enviarme un ejemplo de como lo haces te lo voy agradecer.

En este caso he usado Kjua pero puedes usar otro.
Pasos:
  1. Descarga la librería Kjua.
  2. Te he adjuntado un archivo genqr.js que tiene una pequeña Function que recibe tres  parámetros.
  3. Importa en la carpeta Public de tu proyecto los dos archivos: kjua-0.9.0.min.js y genqr.js.
  4. Crear un WebForm y agrega:
  • Un WebTexBox (WTxt_Dato)
  • Un WebButton (WBtn_GeneraQR)
  • Un WebContainer (WC_QR)
En la carga inicial de tu WebForm agrega a las cabeceras los enlaces a los archivos javascript ya sea en _New o en WebForm_Open según tu configuración, pero si gustas puedes explicar como cargas tus diferentes formularios.
Código:
  Me.AddHeader("<script type='text/javascript' src='/kjua-0.9.0.min.js'></script>")
  Me.AddHeader("<script type='text/javascript' src='/genqr.js'></script>")
En el evento Click del WebButton agregar el código de abajo:
Código:
Public Sub WBtn_GeneraQR_Click()
  If Trim(WTxt_Dato.Text) = "" Then
    Message.Warning("Ingresar un dato", "OK")
    WTxt_Dato.SetFocus()
    Return
  Endif
  Me.Exec("genQR('" & WTxt_Dato.Text & "','','" & WC_QR.Name & "');")
End
Ejecuta y lee los códigos con tu equipo.
Si es lo que estas buscando ya solo tienes que cargar la data desde la base de datos a tu WebTextBox y mostrar según tu lógica de procesos dinámicos.

Saludos.