a

Gerar QR Code

Esta aplicação utiliza a função PHP file_get_contents para acessar uma outra aplicação responsável por gerar o QR Code através da inclusão de uma biblioteca específica para isso.

Detalhes da aplicação

1. Estamos utilizando um formulário baseado na tabela "categories".

   

2. Foi criado um botão do tipo Ajax na aplicação para realizar o acesso à aplicação responsável pela geração do QR Code.

   

3. O botão conterá o seguinte código:

Botão

// Início dos parâmetros de acesso ao webservice
$str_param = "text_to_qr=" . rawurlencode("http://" . $_SERVER["HTTP_HOST"] . $_SERVER["PHP_SELF"] . "?categoryid=" . {categoryid});
$url_qrcode_server = dirname(dirname("http://" . $_SERVER["HTTP_HOST"] . $_SERVER["PHP_SELF"])) . "/qrcode/index.php";
// Fim dos parâmetros de acesso ao webservice

$arr_param['header'] = "Content-Type: application/x-www-form-urlencoded\r\n"; // Configuração de cabeçalho da página.
$str_output = sc_webservice('file_get_contents', $url_qrcode_server, $_SERVER["SERVER_PORT"], "POST", $str_param, $arr_param, 30); // Utiliza a função file_get_contents para acessar o conteúdo de outra aplicação que gerará e retornará o QR Code.

$str_image = "<img src='". "http://" . $_SERVER["HTTP_HOST"] ."/". $str_output ."' />"; // QR Code retornado.
sc_ajax_message($str_image, "QR Corde"); // Exibe o QR Code retornado.

Aplicação de serviço de geração do QR Code

4. O código acima realiza o acesso à aplicação "/qrcode/index.php", responsável pela geração do QR Code. Esta aplicação será uma Blank contendo o seguinte código:

Blank "qrcode"

if(isset($_POST['text_to_qr']) && !empty($_POST['text_to_qr']))
{
// Entra na condição se os parâmetros tiverem sido recebidos corretamente da aplicação anterior.
$token = md5(uniqid(rand(), true));

sc_include_library("prj", "phpqrcode", "qrlib.php", true, true); // Inclui a biblioteca de geração do QR Code.

QRcode::png($_POST['text_to_qr'], $this->Ini->root . $this->Ini->path_imag_temp . "/sc_" . $token . ".png"); // Gera o QR Code.

echo $this->Ini->path_imag_temp . "/sc_" . $token . ".png"; // Retorna o QR Code.
}
exit;

Untitled Document

Rate this Tutorial
Bad Great
Leave your comments (optional).