php - 二维码已生成但未显示在页面上
问题描述
查看 (HTML)
<tbody>
<?php foreach ($order_data as $key => $value): ?>
<tr>
<td> <?php echo $value['id'] ?> </td>
<td> <img src="<?php echo base_url('z_ex/v_1/render/generateQRcode/'.$value['id']) ?>" alt="..."> </td>
</tr>
<?php endforeach; ?>
</tbody>
控制器(脚本)
<?php defined('BASEPATH') or exit('No direct script access
allowed');
ini_set('display_errors', 1);
error_reporting(E_ALL);
require "vendor/autoload.php";
use Endroid\QrCode\QrCode;
class Render extends Admin_Controller
{
public function __construct()
{
parent::__construct();
$this->not_logged_in();
}
public function index(){
if (!in_array('viewOrder', $this->permission)) {
redirect('z_ex/v_1/dashboard', 'refresh');
}
$data = $this->model_orders->getOrdersTrackingNum();
$this->data['data'] = $data;
$this->load->view('render', $this->data);
}
public function generateQRcode($bill_no = 123456) {
$qr = new QrCode("HEy there");
header('Content-Type: '.$qr->getContentType());
echo $qr->writeString();
}
}
我正在使用 Endroid QrCode 包生成 QR 码,它以这种方式显示(如图所示),没有错误,没有警告,只有黑色背景和一个白色的小方块。,我将输出更改为写入文件并保存,IT WORKS。但我不想保存它,我只想在动态调用它时显示它,就是这样。从图像右侧可以看到,标题设置为 image/png。
解决方案
最后通过添加data:image/png;base64
到 HTML 中的src
of解决了这个问题img tag
,它起作用了。
谢谢大家。
推荐阅读
- java - 如何修复“变量始终为真”或“......假”?
- r - 没有真正存在的 # 的搜索结果
- r - R dplyr:将列表输出写入数据帧
- kotlin - 如何以紧凑的方式编写一个使用很多 Calendar 的 set 方法的方法
- eureka-forms - Eureka 如何在不设置 tintColor 的情况下将语言环境设置为 DateInlineRow 的 DatePicker
- delphi - 如果从 StringList 中删除不是最后一项会出错
- python - 写了一点时间增量函数,并希望将结果捕获为一个 numpy 数组
- javascript - 如何通过 id 删除子对象并使用过滤器检索父对象
- class - 我在开始为我的继承类制作 gui 时遇到问题
- sql - 判断内连接还是左外连接的条件语句?