phpqrcode生成二维码

 

 

 header('content-type:text/html;charset=utf-8');
    // 1. 引用类文件
    require_once 'inc/phpqrcode.php';
    include 'inc/config.inc.php';
    include 'inc/mysql.inc.php';
    $link=connect();
    // 生成的地址
    $url='http://'.$_SERVER['SERVER_NAME'].'/order_view.php?id='.$_GET['id'];
    $errorCorrectionLevel = 'L';//容错级别
    $matrixPointSize = 6;//生成图片大小
    //生成二维码图片
    $imgname = 'code'.time().rand(1111,9999).'.png';
    \QRcode::png($url, $imgname, $errorCorrectionLevel, $matrixPointSize, 2);
    
    $logo = 'images/logo.jpg'; // logo图片
    $QR = $imgname;  // 已生成的二维码图片
    if ($logo !== FALSE) {
        $QR = imagecreatefromstring(file_get_contents($QR));
        $logo = imagecreatefromstring(file_get_contents($logo));
        $QR_width = imagesx($QR);//二维码图片宽度
        $QR_height = imagesy($QR);//二维码图片高度
        $logo_width = imagesx($logo);//logo图片宽度
        $logo_height = imagesy($logo);//logo图片高度
        $logo_qr_width = $QR_width / 5;
        $scale = $logo_width/$logo_qr_width;
        $logo_qr_height = $logo_height/$scale;
        $from_width = ($QR_width - $logo_qr_width) / 2;
        //重新组合图片并调整大小
        imagecopyresampled($QR, $logo, $from_width, $from_width, 0, 0, $logo_qr_width,
        $logo_qr_height, $logo_width, $logo_height);
    }
    // 要写入数据库的地址
    $code_url='uploads/'.$imgname;
    //输出图片

   if(imagepng($QR, $code_url)){
       $query="update resource set code_url='$code_url' where id={$_GET['id']}";
       $res=execute($link,$query);
    echo "<script>alert('二维码已生成!');parent.location.reload();</script>";
   } 

前端

<td><?php if(empty($rows['code_url'])){
          echo '<a href="code1.php?id='.$rows['id'].'">[生成二维码]</a>';
     }else{
        echo '<img src="'.$rows['code_url'].'" width="100">';
      } 
      ?>
</td>

取数据库中code_url的地址,如果为空显示生成二维码,否则显示二维码图片

posted @ 2022-05-07 14:45  IT_农民  阅读(403)  评论(0编辑  收藏  举报