Группа тут не столь отдельная сущностьВы группы добавляете? Меняете? Удаляете? Группа объединяет несколько пользователей? Значит сущность. Просто вы мыслите слишком "формально обывательски", а не с точки зрения структуры данных. Все что имеет некоторые свойства, не присущие другим сущностям, имеет свойство изменяться, создаваться и удаляться - сущность, и удобнее всего вынести ее в отдельную таблицу.
а потом раскодировал его в JS при AJAX запросе, но получаю текстЗачем?
Если я оставляю ссылку, как Вы показали, как мне обновить штрих-код, если пользователь в input ввел другие данные ?Ну, в таком случае либо действительно аяксом тащить данные (в вашем случае самое очевидное решение получить base64 строку), либо (что скорее всего будет проще) отправить форму методом гет. Да, будет перезагрузка, но не придется возиться с аяксом. Тут уже смотрите что вам удобнее и практичнее реализовать.
я понимаю, но как сравнить даты то мне тогда?)не понимаете.
но функция diff потом завершается с ошибкой:Которую вы игнорируете.
$origin = new DateTime(); // создали объект
$origin = $origin->format('d-m-Y'); // теперь сделали из него строку (зачем?)
...
$interval = $origin->diff($target); // теперь от строки хотите вызвать функцию, что вам и пишет ошибка.
Это давно неправдаприведенный код использует жквери, который не умеет в бинари.
я так предполагаю, что есть какая-та ссылка, при клике на которую, происходит переход на данные сайта, которые есть на фронте? тогда где - эта ссылка может быть?если даже в разметке она никак не обозначенаНет. Просто по клику инициализируется кусок скрипта, который формирует блоб, делает на него переадресацию и этим вызывает диалог сохранения. Так как урл не ведет на ресурс вне контекста страницы, никакого гет запроса не происходит, все реализуется в рамках апи жс.
не совсем понял, что за задание,Правила сервиса (которые вы наверняка не читали), пункт
Пхп изучать не советую, ибо на нем сплошное легасиНе надо рассуждать о том в чем не разбираешься. За умного сойдешь.