استفسار حول انشاء باركود او qr لكل يوزر

Ameera • منذ سنة

سويت موقع وابغى بعد ما يخلص اليوزر من التسجيل يطلع له  رمزة QR او باركود خاص فيه وينحفظ ف صفحته مشكلتي مو راضي يضبط معي كود انشاء الQR

(تحويل احد البيانات ل qr )

اذا في احد عنده خلفية عن الموضوع ياليت يفيدني 

ساعد بالإجابة

"إن في قضاء حوائج الناس لذة لا يَعرفها إلا من جربها، فافعل الخير مهما استصغرته فإنك لا تدري أي حسنة تدخلك الجنة."

الإجابات (1)

Alhoqbani • منذ سنة
مميز

ممكن تحطين الكود اللي تستخدمينه لإنشاء الباركود؟ والخطوات اللي سويتيها لحفظ الباركورد؟ وأي خطأ يظهر أثناء حفظ الباركود؟

هذي طريقة سريعة لإنشاء الـQR Code باستخدام المكتبة endroid/qr-code

تثبيت المكتبة:

# composer تثبيت المكتبة باستخدام كمبوسر
composer require "endroid/qr-code ^2"

ومن ثم بإمكانك استخدام المكتبة كما في الكود التالي:

<?php


require_once __DIR__ . '/vendor/autoload.php';

use Endroid\QrCode\QrCode;

$username = 'alhoqbani';

// النص الذي يظهر عند قراءة الباركود
$text = 'https://3alam.pro/' . $username;

// إنشاء باركود جديد
$qrCode = new QrCode($text);
$qrCode->setSize(300); // مقاس الباركود
$qrCode->setMargin(32); // إضافة مسافات في جوانب الباركود
$qrCode->setLabel("Scan for profile link", 20); // إضافة عبارة على الباركود

// حفظ الصورة على ملف في السيرفر
$qrCode->writeFile(__DIR__ . "/$username-qrcode.png");

// تحويل الباركود إلى نص
$qrText = $qrCode->writeString();

$mode = 'display'; // possible values: download, display, render

// لتنزيل الباركورد على جهاز المستخدم
if ($mode == 'download') {
    header("Content-Length: " . strlen($qrText));
    header("Content-Disposition: attachment; filename=$username-qrcode.png");
    header('Content-Transfer-Encoding: binary');
    header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
    header('Content-Type: ' . $qrCode->getContentType());
    echo $qrCode->writeString();
    exit;
}

// لعرض الباركود على كامل المتصفح كصورة
if ($mode == 'render') {
    header('Content-Type: ' . $qrCode->getContentType());
    echo $qrCode->writeString();
    exit;
}

// لاستخدام الباركود كصورة في الصفحة
if ($mode == 'display') { ?>
    <!doctype html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <meta name="viewport"
              content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
        <meta http-equiv="X-UA-Compatible" content="ie=edge">
        <title><?php echo $username ?> QR Code</title>
    </head>
    <body>
    <div style="display: flex; flex-direction: column; justify-content: center; align-items: center">
        <h1>QR Code for <?php echo $username ?></h1>
        <img src="<?php echo $qrCode->writeDataUri() ?>" alt="<?php echo $username ?> QR Code">
    </div>
    </body>
    </html>
<?php } ?>

 

وهذه نتيجة الكود أعلاه:

لايوجد لديك حساب في عالم البرمجة؟

تحب تنضم لعالم البرمجة؟ وتنشئ عالمك الخاص، تنشر المقالات، الدورات، تشارك المبرمجين وتساعد الآخرين، اشترك الآن بخطوات يسيرة !