...

Мені потрібно призначити людей на роботу в проектах. Задіяні 3 таблиці: імена людей, список вакансій і проекти, в яких вони братимуть участь. Те, що я хочу зробити, це

  1. введіть ім'я та прізвище особи
  2. пошук людини по імені
  3. повернути посвідчення особи цієї особи
  4. виберіть роботу, яку вони виконуватимуть, і отримайте цей ідентифікатор (у мене вже є спадне меню для цього)
  5. введіть jobID та personID у таблицю проекту.

Я хочу переконатися, що введене ім’я введено правильно. Чи можу я використовувати PHP для створення поля введення автопропозицій для імен?

Залежно від того, скільки імен/ідентифікаторів ви переглядаєте, можливо, буде простіше попередньо заповнити змінну JavaScript даними та використовувати їх, а не намагатися пересилати дані туди-сюди під час введення.

Список осіб особливо довгий?



1 лайк

Гаразд, ось приклад, який отримує файл JSON, що містить 1000 співробітників. Може це варіант?

[
  {"id":1,"first_name":"Keven","last_name":"Insole"},
  {"id":2,"first_name":"Carolann","last_name":"D'Hooge"},
  {"id":3,"first_name":"Shepherd","last_name":"Di Maggio"},
  ...
]

Його, очевидно, можна отримати з api.

Відповідно до деяких попередніх прикладів, які я опублікував тут на Sitepoint, я використовую autocomplete.js

Налаштування наступне
HTML

 

Javascript

// generic function for fetching json data from a url
const fetchJson = async (url) => {
    try {
        const response = await fetch(url);
        return response.json();
    } catch (err) {
        console.error(err);
    }
}

async function main() {
    const employees = await fetchJson('https://assets.codepen.io/3351103/employees.json');
    // Using the employees JSON data: [{"id":1,"first_name":"Keven","last_name":"Insole"}, ...]
    // Create a new array of objects joining "first_name" and "last_name" to make a "fullName" property
    // include employee "id".
    const employeesSearchData = employees.map((employee) => {
        return {
            id: employee.id,
            fullName: `${employee['first_name']} ${employee['last_name']}`
        };
    });

    const autoCompleteJS = new autoComplete({
        selector: "#name",
        data: {
            src: employeesSearchData,
            keys: ['fullName'] // key to use for search
        },
        threshold: 2,
        resultsList: { maxResults: 10 },
        resultItem: { highlight: true },
        events: {
            input: {
                selection(event) {
                    // e.g. {id: 575, fullName: 'Rutherford Dobbie'}
                    const employee = event.detail.selection.value;
                    autoCompleteJS.input.value = employee.fullName;
                    // for illustration purposes
                    document.querySelector('#employee')
                        .textContent = `ID: ${employee.id}, Name: ${employee.fullName}`
                }
            },
        }
    });
    
    // Clear employee, when search is cleared.
    document.querySelector('#name').addEventListener('input', (event) => {
        if (!event.target.value) {
            document.querySelector('#employee').textContent = ""
        }
    })
}

main();

Інформація про використання fetch api

Болівія, Парагвай, Бразилія, Уругвай та Аргентина

Прес-реліз

Це машинний переклад випуску нижньої палати Бразилії

Цього четверга (12) нижня палата схвалила Проект законодавчого указу (PDL) 159/22, який передбачає скасування плати за роумінг між МЕРКОСУР країни (Аргентина, Бразилія, Парагвай, Уругвай і Болівія). Текст буде направлений на аналіз до Сенату.

Представлена ​​Представництвом Бразилії в парламенті Меркосур пропозиція включає угоду про скасування збору плати за міжнародний роумінг для кінцевих користувачів Меркосур, підписану в 2019 році.

Мета полягає в тому, щоб дозволити користувачам мобільних телефонів, які подорожують країнами блоку, отримувати плату згідно з планом, укладеним у їхній країні походження, без додаткової плати.

Доповідач тексту для Конституції та Комітету з питань правосуддя та громадянства (CCJ), законодавець Орландо Сілва (PCdoB-SP), рекомендував схвалити угоду.

Джерело: Інформаційне агентство нижньої палати.

Підпишіться на провідну платформу бізнес-аналітики в Латинській Америці з різними інструментами для постачальників, підрядників, операторів, уряду, юридичної, фінансової та страхової галузей.

” class=”btn btn-lg btn__orange-light ” qa-automation=”cmd_robot_btn_footer_content_demo”> Запит на демонстрацію