El código QR es un tipo de código de barras bidimensional que se utiliza para almacenar pequeñas cantidades de texto o datos (ver Wikipedia). Existen diferentes tamaños y niveles de corrección de errores de códigos de barras QR para almacenar diferentes cantidades de datos con una cantidad seleccionable de redundancia.
Las implementaciones en las plataformas actuales de teléfonos móviles, como Android, pueden usar los contenidos de un código QR como una URL para abrir en el navegador web del teléfono. (Se supone que los iPhones de Apple son capaces de leer códigos QR con el software Semacode gratuito). Por lo tanto, puede hacer un seguimiento del uso de estos códigos de barras utilizando herramientas como los analizadores de registros del sitio web.
Otros formatos de datos utilizables por teléfonos móviles incluyen vCard, que se utiliza para almacenar la información de contacto de una persona (ver Wikipedia). A diferencia de las URL, el uso de estas no se puede rastrear fácilmente (es decir, si el usuario marca el número de teléfono en lugar de abrir una URL incrustada en el interior). Aunque las URL simples se usan comúnmente con el código QR, vCard sí tiene un campo de URL.
Si desea generar códigos QR desde su sitio web, puede usar Google Charts (como dice Adam Straughan), o puede usar una de las muchas bibliotecas que existen para lenguajes de programación populares (por ejemplo, http://phpqrcode.sourceforge.net/ para PHP , o http://code.google.com/p/zxing/ para Java) si desea hacerlo en su propio servidor. Debería proporcionar una URL o vCard válida como texto para codificar a fin de que el código QR pueda escanearse con un teléfono móvil. Las aplicaciones industriales difieren en lo que está codificado.
Lo más probable es que no guarde las imágenes del código QR en la base de datos. En su lugar, debe almacenar la URL u otro texto contenido en el código de barras para que pueda buscar la información necesaria cuando se escanea el código de barras o regenerar el código de barras si es necesario.
El enlace zxing anterior es correcto, sí, y usa Google Chart API para la generación. También mencionas correctamente que el proyecto contiene el código fuente de un codificador, y ese código está disponible en otra parte en http://code.google.com/p/zxing –