[英]How to store id number in my database to the QR code that I will generate using PHP?
我是 PHP 新手,目前我正在创建一个二维码生成器。 但是,我遇到了一些问题,我不知道如何将我的数据库的详细信息连接到 QR 码。 我的意思是我想在我的数据库中使用字段 idNum 作为在我的二维码中生成的文本。 以下是我的代码示例:
include('phpqrcode/qrlib.php');
$text="Hello";
$path = 'qrcodes/';
$file = $path.uniqid().".png";
$ecc = 'L'; // error correction capability
$pixel_Size = 170;
$frame_size = 10;
QRcode::png($text, $file, $ecc, $pixel_Size, $frame_Size);
我想在我的数据库中显示 idNum,而不是文本“Hello”。 如何? TY
这也是我创建的一个尝试代码,但是当我扫描二维码时,没有显示任何值。 任何建议为什么?
$connection = mysqli_connect("localhost", "root", "", "db_bakascts") or die(mysqli_error($mysqli));
$id=isset($_POST['idNum']);
$sql = "SELECT * FROM tb_usersreg WHERE idNum='$id'";
$result=mysqli_query($connection,$sql) or die("Error");
$width = "250";
$height = "250";
$url = "https://chart.googleapis.com/chart?cht=qr&chs={$width}x{$height}&chl={$id}";
$qr["img"] = $url;
我创建了一个简单的工作示例,包含一个 list.php 和 qr.php。
这将根据数据库中的 id 显示一个二维码列表。
$connection = mysqli_connect("localhost", "root", "", "db_bakascts") or die(mysqli_error($mysqli));
$sql = "SELECT * FROM tb_usersreg";
$result=mysqli_query($connection,$sql) or die("Error");
foreach($result as $result) {
echo "<img src='qr.php?idNum={$result['idNum']}' />";
}
Qr.php 将根据给定的 idNum 呈现二维码。
include('phpqrcode/qrlib.php');
$id=isset($_GET['idNum']) ? $_GET['idNum'] : trigger_error("No idNum given");
QRcode::png($id); //this will output the qr code directly as an image
我的数据库中有 2 条记录。
由于您在问题中解释了您想根据数据库中的 id 生成一些 QR 码,因此我创建了这个简单的示例。 如果需要,您可以根据需要进一步调整它。
我假设你想要像我上面给出的例子那样的东西。 但我想指出您的代码中的一些代码改进:
$id=isset($_POST['idNum']);
这将返回一个布尔值,而不是数字 id 值。 您可以查看我的代码是如何实现的:
$id=isset($_GET['idNum']) ? $_GET['idNum'] : trigger_error("No idNum given");
如果您必须在查询中使用参数,请使用 mysqli_real_escape_string 来防止 SQL 注入。
$sql = "SELECT * FROM tb_usersreg WHERE idNum='".mysqli_real_escape_string($id) . "'";
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.