Страница 1 из 1

Нужен совет по QR-коду (Решено)

Добавлено: 29 ноя 2024, 08:34
Parazit00
Кто может подсказать, как сделать так, чтобы QR-код работал только в том случае, если в поле "ID-Заказа" появляется число?

Хочу реализовать функционал выдачи по QR-коду для удобства клиентов.
Можно ли задать условия для этого в специальном поле?
Screenshot_7.png
Хочу вот такое реализовать для телефонов.
Screenshot_8.jpg

Re: Нужен совет по QR-коду

Добавлено: 29 ноя 2024, 11:28
SalahievFR
Может через php создать куар по условию, а в настройках поля поставить галочку показывать если заполнено. ?

Re: Нужен совет по QR-коду

Добавлено: 29 ноя 2024, 13:53
Parazit00
SalahievFR писал(а): 29 ноя 2024, 11:28 Может через php создать куар по условию, а в настройках поля поставить галочку показывать если заполнено. ?
Блин, спасибо! Что-то я совсем про это забыл. Мозги что-то последнее время не работают.

Re: Нужен совет по QR-коду

Добавлено: 30 ноя 2024, 13:01
Parazit00
Долго мучился с тем, как заставить QR-код работать через PHP. В итоге удалось сделать так:

Код: Выделить всё

// Подключение библиотеки для работы с QR-кодами
require_once 'includes/libs/phpqrcode-master/qrlib.php'; // Убедитесь, что путь указан корректно

// Проверяем, авторизован ли пользователь
if (!isset($app_user['id'])) {
    echo '<p style="color: red; font-weight: bold;">Ошибка: текущий пользователь не определен.</p>';
    exit;
}

// Получаем ID текущего пользователя
$current_user_id = (int)$app_user['id'];

// Выполняем запрос для получения данных из базы
$query = db_query("SELECT field_744 FROM app_entity_1 WHERE id = {$current_user_id}");
$row = mysqli_fetch_assoc($query);

// Генерация QR-кода
function generateQrCode($url)
{
    ob_start();
    QRcode::png($url, null, QR_ECLEVEL_L, 5); // Генерация QR-кода
    $qrCodeImage = ob_get_clean();
    return base64_encode($qrCodeImage); // Конвертация изображения в base64
}

// Проверяем наличие данных в поле field_744
if (!empty($row['field_744']) && is_numeric($row['field_744'])) {
    // Если данные есть, генерируем QR-код с уникальной ссылкой
    $field_744_data = $row['field_744'];
    $qr_code_url = "https://shop-ex.kz/index.php?module=items/info&path=49-{$field_744_data}";
    $qrCodeBase64 = generateQrCode($qr_code_url);

    // Отображение QR-кода
    echo '<div style="text-align: center; margin-top: 20px;">';
    echo '<img src="data:image/png;base64,' . $qrCodeBase64 . '" alt="QR-код">';
    echo '<p>Сканируйте QR-код, чтобы получить информацию о посылке.</p>';
    echo '</div>';
} else {
    // Если данных нет, генерируем QR-код с адресом главной страницы
    $default_url = "https://shop-ex.kz/index.php";
    $defaultQrCodeBase64 = generateQrCode($default_url);

    // Отображение QR-кода с уведомлением
    echo '<div style="text-align: center; margin-top: 20px;">';
    echo '<img src="data:image/png;base64,' . $defaultQrCodeBase64 . '" alt="QR-код">';
    echo '<p style="font-weight: bold; color: gray;">Посылок для самовывоза нету!</p>';
    echo '</div>';
}
Мне кажется, код получился громоздким. Теперь думаю, как его оптимизировать.

Re: Нужен совет по QR-коду

Добавлено: 30 ноя 2024, 18:51
it@ivku.ru
Ничего не надо менять! Все понятно, спасибо, дружище, отличный и главное понятный код!

Re: Нужен совет по QR-коду

Добавлено: 08 дек 2024, 11:48
Parazit00
Кто может подсказать, как работать с плагинами?

Хочу сделать, чтобы у QR-кода была своя страница. Пробую реализовать по примеру hello, но QR-код не отображается: страница есть, а функционал не работает. Думаю, что-то не подключил или делаю что-то неправильно. Прошу сильно не критиковать — я пока не разобрался, как работают плагины.



Все разобрался .. :D
Screenshot_4.png