Задать вопрос
  • Как получить initData (startParams) в telegram mini app на React?

    @stastp
    ▎Шаги для получения initData

    1. Подключите Telegram Web App SDK:
    Убедитесь, что вы подключили скрипт SDK в вашем HTML-файле:

    <script src="https://telegram.org/js/telegram-web-app.js"></script>



    2. Инициализация в вашем React приложении:
    В вашем компоненте React вы можете инициализировать Telegram SDK и получить данные следующим образом:
    import React, { useEffect, useState } from 'react';
    
       const MyTelegramApp = () => {
           const [userData, setUserData] = useState(null);
    
           useEffect(() => {
               // Проверяем, доступен ли объект Telegram Web App
               if (window.Telegram && window.Telegram.WebApp) {
                   // Инициализируем Telegram Web App
                   window.Telegram.WebApp.ready();
    
                   // Получаем initData
                   const initData = window.Telegram.WebApp.initData;
    
                   // Парсим данные пользователя
                   const user = parseInitData(initData);
                   setUserData(user);
               } else {
                   console.error('Telegram Web App is not available');
               }
           }, []);
    
           const parseInitData = (initData) => {
               const params = new URLSearchParams(initData);
               return {
                   user: JSON.parse(params.get('user')),
                   hash: params.get('hash'),
                   auth_date: params.get('auth_date'),
                   start_param: params.get('start_param'),
                   chat_type: params.get('chat_type'),
                   chat_instance: params.get('chat_instance'),
               };
           };
    
           return (
               <div>
                   <h1>My Telegram Mini App</h1>
                   {userData ? (
                       <div>
                           <h2>User Info:</h2>
                           <pre>{JSON.stringify(userData, null, 2)}</pre>
                       </div>
                   ) : (
                       <p>Loading user data...</p>
                   )}
               </div>
           );
       };
    
       export default MyTelegramApp;



    3. Обработка ошибок:
    Убедитесь, что ваше приложение действительно запускается внутри Telegram. Если вы тестируете его в обычном браузере, объект window.Telegram не будет доступен, и вам нужно будет проверить это условие.

    ▎Замечания

    • Проверка окружения: Убедитесь, что вы тестируете приложение в самом Telegram, так как window.Telegram не будет доступен в обычном веб-браузере
    Ответ написан
    Комментировать
  • Как решить проблему X does not implement Y при работе с интерфесами?

    По-хорошему, у вас репозиторий не должен никогда возвращать интерфейс. В Го принято возвращать конкретный тип, а не интерфейс. https://github.com/golang/go/wiki/CodeReviewCommen...

    Плюсом еще замечу, что обычно возвращаемый тип является внутренней моделью данных. Это обязанность пакета repository конвертировать из какого-то внушнего представления во внутреннюю модель.

    Если сказать по-другому: в domain-пакетах у вас не должно быть импортов каких-то структур из пакета БД, только наоборот — из пакета БД импортить типы из domain.
    Ответ написан
    Комментировать
  • Как выбирать первичные ключи в БД?

    AlexNest
    @AlexNest
    Работаю с Python/Django
    Но часто всё-таки добавляют искусственный первичный ключ "Номер".

    Основная идея первичных ключей - неизменяемость и уникальность. В качестве ключа может использоваться, например, инвентарный номер или isbn, даже если содержит буквы/символы, т.к. он физически уникален и не изменяем. С другой стороны есть очень много вещей, которые могут меняться: фио, номера телефонов, логины. И если изменить это данные, то придется изменить их и во всех таблицах, которые ссылаются на эти данные. И чтобы избежать таких ситуаций и используют искусственные ключи.
    Ответ написан
    1 комментарий
  • В чем ошибка при уведомлении оплаты от юмонеу?

    delphinpro
    @delphinpro Куратор тега PHP
    frontend developer
    Вы написали примитивное сообщение об ошибке и удивляетесь, что вам не понятна ее природа?

    if ($_POST['sha1_hash'] != $hash) exit('Неверный хэш');
    if ($_POST['codepro'] === true) exit('Что-то не то с параметром codepro');
    if ($_POST['unaccepted'] === true ) exit('Что-то не то с параметром unaccepted');
    Ответ написан
    6 комментариев
  • Как переносить файл с логами из докер контейнера на хост? Как его хранить?

    ky0
    @ky0
    Миллиардер, филантроп, патологический лгун
    Более нормальное решение - не писать логи в файлик.
    Ответ написан
    2 комментария
  • Как лучше покупать Instagram аккаунты?

    ErVinTract
    @ErVinTract
    Жизнерадостный человек
    Лучше всего покупать старые аккаунты ( Дольше работают ), Ну и обычно проще сделать саморег акки они достаточно хорошо проживают и платить толком ничего не надо
    Ответ написан
    Комментировать
  • Как лучше покупать Instagram аккаунты?

    DanArst
    @DanArst
    Гриффиндор в моде при любой погоде!
    Можно и автореги, но проверяйте с какой страны регистрация и нафармлен ли аккаунт. Если условно страна регистрации Украина, то и с украинского ip стоит работать. Фарм нужен, чтобы хоть какой-то стартовый траст был у аккаунта, иначе при любом подозрительном действии FB будет просить подтверждения личности.
    Ответ написан
    3 комментария
  • Как лучше покупать Instagram аккаунты?

    opium
    @opium
    Просто люблю качественно работать
    Ну в целом как обычно
    Заходишь на Дир покупаешь тестовую партию штук сто, запускаешь в софте тестишь , смотришь как умирают, потом идёшь вс следующий магазин на дире и точно так же.
    В целом качественно и доступность аккаунтов не будет никогда нигде одинаковым, то есть бывают ситуации что все магазины продают гавно рублей и все это по рублей пять
    А бывают несколько ок и по полтора
    Ну и не мелочись купить ипв4 резики т для аков
    Ответ написан
    5 комментариев
  • Почему INSTAGRAM стал банить безобидных ботов?

    GALITSKY
    @GALITSKY
    В сентябре мы регнули 200 лямов аков за сутки через баг инсты, примерно только лям ботов был использован (продан, рассылал) и потом было не до этого. По мимо нас на рынке реги можно было найти не менее 5-10 млн акк в сутки.
    Чаще аки слали зарубежным пользователям ссылку на регистрацию в партнерской программе, а также к нам пришли из евромы/сша за покупкой аков. Считаем началом отправной точкой.

    Сейчас рега померла до 30-50тыс аков в сутки с 1 сервера и чистых проксей. Все кто работает на мобильных или приубитых проксях, тот банится. Плюс непонятно на чем вы работаете, есть ли у вас подмена отпечатка браузера и протокол WebRTC.

    Можете купить готовые аккаунты в агрегаторе deer.io ищите "инстаграм" а в описании брут или отлежка 3мес+
    Ответ написан
    1 комментарий
  • Как исправить ошибку Array to string conversion?

    @kandrash
    Кратко о себе
    Наверняка <?=$correct_words?> представляет собой массив и jQuery тут вообще не при чём. Да и Ларавел в общем тоже.
    Ответ написан
    1 комментарий
  • Как мне работать с классом БД в любом файле?

    @constintmid
    Laravel vue.js
    делай require 'Db.php'
    и делай new Db()
    Ответ написан
    Комментировать
  • Путь к phpstorm Linux Ubuntu 18.04?

    LazyTalent
    @LazyTalent
    Data Engineer, Freelancer
    1. Запускаешь шторм
    2. Tools -> Create Command-line Launcher
    3. Появиться диалоговое окно с путём
    4. Копируешь путь
    5. Жмеёшь OK
    Ответ написан
    Комментировать
  • Не могу подключить класс через Composer. Может что то не так делаю?

    Maksclub
    @Maksclub Куратор тега PHP
    maksfedorov.ru
    1. в файле composer.json:
    "application\\": "application",
    замените на "application\\": "application/",

    2. Подключите в ваш файл autoload.php:
    require __DIR__.'/../vendor/autoload.php';

    3. выполните команду composer dump-autoload
    Ответ написан
    Комментировать
  • Что это за вирус, на что он направлен?

    @granty
    Этот кусок php-кода посылает на емайл portovjack@gmail.com (он закодирован в "cG9ydG92amFja0BnbWFpbC5jb20=") сообщение об успешной установке шелла на сайте.

    Как видно из сообщения $body, сам PHP-шелл находится в модуле http:// $web$path, ищите это письмо в логах почтового сервера, оно было отправлено через почтовик хостера.
    Или смотрите последние даты изменения php-файлов движка сайта - сам шелл там.
    Ответ написан
    Комментировать
  • Какой класс вместо corsar использовать?

    Sanasol
    @Sanasol Куратор тега Laravel
    нельзя просто так взять и загуглить ошибку
    а сейчас не могу понять как это сделать?

    Может быть потому что он всегда был Carbon?

    А еще есть просто now()

    В крайнем случае есть в php DateTime ну и всё такое.
    Ответ написан
    Комментировать
  • Какой рынок программирования НЕ «перегрет»?

    saboteur_kiev
    @saboteur_kiev Куратор тега Карьера в IT
    software engineer
    Вообще замерзает рынок специалистов уровня сеньор.
    Вакансии висят месяцами и годами.

    Не перегрет рынок уровня мид. Вакансий полно.

    Вот на уровне джуниор - там полно вайтишников, а вакансий мало, потому что никому не нужны люди, которые приходят на работу учиться, и строить карьеру, а не работать.

    Поэтому выбирайте любую область, которая вам нравится, чтобы лично у вас была заинтересованность и желание дойти до приемлимой квалификации.
    Ответ написан
    2 комментария
  • Как происходит выделение памяти?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    Память выделяется блоками с некоторым минимальным размером. При создании переменной $a было выделено 32 байта. В сумме переменные $a, $b и $c занимают 22 байта, с выравниванием - 24 байта. Соответственно, дополнительной памяти под них не требовалось.
    При создании массива память была запрошена, скорее всего, не только под сам массив, но и для подгрузки функции range.
    Ответ написан
    1 комментарий
  • База данных городов России на русском языке с их геокоординатами

    @serzh82
    https://on55.ru/articles/2 - база координат lat и lng всех городов России
    Ответ написан
    Комментировать
  • Откуда при выводе данных может появляться цифра 1?

    @Narts
    <?php $faq = include ('inc/faq/'.(get_field('faq-file'))); echo $faq; ?>

    в данном случае, переменная $faq - результат работы include (boolean-значение: $faq равна 1, если файл найден, 0 если файл не найден)
    и далее выводится эта переменная

    Решение:
    <?php if(get_field('faq-file')) : ?>
    <?php include ('inc/faq/'.(get_field('faq-file'))); ?>
    <?php else : ?>
    <?php include 'inc/faq/default.php'; ?><?php endif; ?>
    Ответ написан
    Комментировать
  • Какой php-фреймворк сейчас стоит изучать в качестве первого?

    TTkachev
    @TTkachev
    PHP + Python + JavaScript + ObjectiveC
    Я бы порекомендовал Laravel, это просто чудо какое-то. Не просто фреймворк, а полноценная среда разработки. Все плюшки уже под капотом. Нравится в нем все. Особенно полюбился Valet для Mac. Сейчас на Valet-е у меня работают и Wp и bitrix и даже magento. Забыл про XAMP-ы и MAMP-ы как про страшный сон.
    Ответ написан
    3 комментария