• Php не видит name из html. Уверен, что все верно написано. Что делать?

    @thisuserhatephp
    У вас нет кнопки сабмита
    добавьте if
    так же не понятно зачем подключать index.html
    пысы: id должен быть уникальным

    spoiler


    <form action="test2.php" method="POST">
                <section class="Zakaz">
                    <div class="container">
                        <div class="row">
                            <div class="col-12">
                                <select name = "type" class="form-select" aria-label="Default select example">
                                    <option selected>Выберите тип задания(Если тип не будет выбран, то ваше задание попадет в небытие)</option>
                                    <option value="1">Практика</option>
                                    <option value="2">Практическая</option>
                                    <option value="3">Отчет</option>
                                    <option value="4">База данных</option>
                                </select>
                                <div class="mb-3">
                                    <label for="exampleFormControlInput1" class="form-label">Почта</label>
                                    <input type="email" name ="email" class="form-control" id="exampleFormControlInput1" maxlength="200" placeholder="name@example.com">
                                  </div>
                                  <div class="mb-3">
                                    <label for="exampleFormControlInput1" class="form-label">Телеграм(@...)</label>
                                    <input name="tg" type="text" class="form-control" id="exampleFormControlInput1" maxlength="200" placeholder="@name">
                                  </div>
                                  <div class="mb-3">
                                    <label for="exampleFormControlInput1" class="form-label">Опишите задание(не более двухста символов)</label>
                                    <input name = "question" type="text" class="form-control" id="exampleFormControlInput1" maxlength="200" placeholder="Ваше задание...">
                                  </div>
                                  <div class="mb-3">
                                    <label for="exampleFormControlInput1" class="form-label">Дедлайн(за срочность идет доплата в 300руб)</label>
                                    <input name = "deadline" type="date" class="form-control" id="exampleFormControlInput1" placeholder="">
                                  </div>
    
                                  <input type="submit" value="Send">
                            </div>
                        </div>
                    </div>
                </section>
            </form>
      // Как минимум так. Но оно все равно может выдать ошибку если одно из полей будет не заполнено. Ну ты понял в какую сторону смотреть я надеюсь
      if(!empty($_POST)) {
         $type = $_POST['type'];
         $email = $_POST['email'];
          $tg = $_POST['tg'];
          $question = $_POST['question'];
         $deadline = $_POST['deadline'];
    }

    Написано
  • Как наследовать два класса в php?

    @thisuserhatephp Автор вопроса
    Тогда мне нужно в одном файле скажем DB.php

    Написать трейты для requst, instert, update. И в этом файле в классе db сделать use requst; use insert; ...

    И наследовать класс db ?

    Я правильно понял ?
    Написано
  • Как хранить и обмениваться текущим смещением строк в файле при его построчном чтении несколькими процессами?

    @thisuserhatephp
    chatGPT

    Для организации конкурентной обработки строк файла без использования MySQL или другой базы данных вы можете воспользоваться механизмом межпроцессового взаимодействия, таким как блокировки и семафоры. Вам потребуется использовать некоторые инструменты, доступные в Laravel, такие как Redis или файловые блокировки.

    Вот общий план действий:

    1. Разделите ваш файл на N частей (где N - количество процессов, например, 100), и определите смещение каждой части в файле.

    2. Создайте N отдельных процессов, каждый из которых будет обрабатывать свою часть файла.

    3. Используйте механизм блокировок, чтобы гарантировать, что каждый процесс будет обрабатывать только свои строки. Это может быть достигнуто с использованием Redis или файловых блокировок.

    4. В каждом процессе считайте свою часть файла с учетом смещения и обрабатывайте строки.

    5. По мере того как каждый процесс завершает обработку своей части, он может освободить блокировку или сообщить главному процессу о завершении.

    Пример использования Redis для синхронизации процессов в Laravel:

    use Illuminate\Support\Facades\Redis;
    
    // В главном процессе
    $numberOfProcesses = 100;
    $fileSize = 10000;
    $chunkSize = ceil($fileSize / $numberOfProcesses);
    
    for ($i = 0; $i < $numberOfProcesses; $i++) {
        $offset = $i * $chunkSize;
        $chunkKey = "process:$i";
        Redis::set($chunkKey, $offset);
        // Запустить процесс с $offset и $chunkSize для чтения и обработки своей части файла.
    }
    
    // В каждом процессе
    $processId = getProcessId(); // Здесь уникальный идентификатор процесса
    $chunkKey = "process:$processId";
    
    while (true) {
        $offset = Redis::get($chunkKey);
        if ($offset === false) {
            break; // Процесс завершает работу, так как нет больше данных для обработки.
        }
        
        // Читайте и обрабатывайте часть файла с учетом смещения $offset и размера чанка.
        
        // После обработки, можно освободить блокировку
        Redis::del($chunkKey);
    }
    
    // Главный процесс может дождаться завершения всех процессов перед продолжением выполнения.


    Этот пример демонстрирует, как можно использовать Redis для синхронизации процессов и обработки файла по частям без использования базы данных MySQL. Вы можете адаптировать этот код под ваши потребности и добавить обработку ошибок и другие функции, которые вам нужны.

    Написано
  • Как правильно составить данный запрос?

    @thisuserhatephp Автор вопроса
    Дмитрий,

    В первой таблице -> Пользователи
    Во второй таблице -> страны в которых был пользователь

    В итоге нужно получить результат:

    Путин - Россия, Германия
    Наташа - Украина
    Дмитрий - Узбекистан, Чечня
  • Как правильно составить данный запрос?

    @thisuserhatephp Автор вопроса
    Дмитрий, Кончено там должен быть уникальный id строки так же id пользователя, но для примера набросал так)
  • Как получить все значения из таблицы?

    @thisuserhatephp Автор вопроса
    Slava Rozhnev, Действительно так работает, я в спешке создал вопрос, не описав вопрос полностью.

    Приложил пример, попытался максимально приблизить к реальному коду

    https://sqlize.online/s/ti

    Не знает, как это можно сделать, оставив GROUP и ORDER ?
  • Как получить все значения из таблицы?

    @thisuserhatephp Автор вопроса
    Окей, пересоздам тему детальней описав проблему
  • Как получить все значения из таблицы?

    @thisuserhatephp Автор вопроса
    Окей, пересоздам тему детальней описав проблему
  • Как прятать кнопку если ajax контент закончился?

    @thisuserhatephp
    Вообще у тебя изначально должна быть функция, которая должна проверять есть ли страницы и в зависимости от этого рисовать пагинацию. Что будет если у тебя изначально будет контента на 1 страницу ? Кнопка "показать еще" все равно будет и нажав на нее новая страница не загрузится и кнопка просто пропадет.

    Если примитивно -
    Сделай функцию в которой будешь проверять, есть ли следующая страница и аргументом функции передавай номер текущей страницы.
    В теле функции прибавляй к текущей странице и делай запрос, ответом будет true/false в зависимости от того есть ли след страница.

    В аяксе ты передаешь переменную page, на бэке вызываешь эту функцию с аргументом (page) результат в джсоне выводишь на фронт.

    echo json_encode([
     'myData' => тут контент,
     'isNext' => тут результат той функции
    ]);


    На фронте

    success:function(data){
            content = $(data.myData).find('.item');
            pagination = $(data.myData).find('#pagination_ajax').html();
             
    
          if(data.isNext) {
           // Тут уже показываешь кнопку иначе скрываешь
          }
          }


    Если примитивно, то так
  • Как использовать сканер штрихкодов в вебе?

    @thisuserhatephp Автор вопроса
    accountnujen, теперь ясно, спасибо. Отмечу решением
  • Как использовать сканер штрихкодов в вебе?

    @thisuserhatephp Автор вопроса
    accountnujen, до меня не доходит, то есть этп штука просто нажимает ентер ? Если так, то мне нужно как то прописать логику, что бы понимать когда нажимают ентер на клавятуре, а когда на этой штуке
  • Как использовать сканер штрихкодов в вебе?

    @thisuserhatephp Автор вопроса
    Спасибо за ответ.

    Я обновил вопрос, может так суть вопроса станет немного яснее
  • Как после отправки формы через ajax вывести модальное окно?

    @thisuserhatephp
    Покажи код ajax запроса, что бы не гадать, что у тебя там. Опиши, что пробовал и что не получилось. Обычно достаточно в теле success вызвать модалку

    spoiler
    Закрепите этот вопрос для пример как не нужно задавать вопрос.
  • Почему в AJAX ответе не работают JS скрипты?

    @thisuserhatephp
    Что бы скрипты работали для динамически добавленных элементов нужно использовать делегирование. Ответ в предыдущем вопросе об этом. Почитайте об этом, в гугле достаточно инфы.

    Например в jquery можете обращаться к элементу от body или document :

    $('body').on('click', '.your_elements', function(){
       // тут код
    });


    или

    $(document).on('click', '.your_elements', function(){
       // тут код
    });


    Но что бы ответить на ваш вопрос более точно, нужно его детальней описать. Мало данных, кода нет.
  • Как перенести базу данных с одного хостинга на другой?

    @thisuserhatephp
    Обычно при переезде с хостинга на хостинг, при желании хостинг провайдер сам переносит данные. Можешь попробовать написать в тп
  • Почему из файла отображения в opencart отправляется запрос к контроллеру не в ту папку?

    @thisuserhatephp
    Павел, и это отвратительно. Не зря же в новых версиях отказались от этой помойки в пользу твига