Size: a a a

2020 July 03

F

Flokker in phpGeeks
Andrey Shaposhnikov
Слушай, у тебя наркомания какая-то, а не код.

Давай пойдём сначала - что вводят юзеры?
Из текста понятно, что там есть фамилия, организация (в каком виде это вводится?), некий индекс. Ещё какие-то данные есть? Фамилия - это фамилия менеджера?
Наркомания не то слово, иногда именно так и писал некоторые участки. Смотри, есть поля Фамилия Имя Отчество, Организация, Это те с которыми щас работаю с остальными давно разобрался и проблем нет. Я все это заношу в массив , потом разбиваю циклом, потому что может быть больше одного автора и организации и мне нужно понимать что к чему относится(подумал логично так все сделать).
источник

ЯХ

Ярослав "Varrka... in phpGeeks
Andrey Shaposhnikov
Внимание, вопрос - если я криворукий юзер и в записи ID=2 ввёл не "ООО Ромашка", а "ООО  Ромашка" (2 пробела) - считаем это одной организацией или разными?
Хах, это к автору кода. Я ему про то-же самое говорю
источник

F

Flokker in phpGeeks
Andrey Shaposhnikov
Внимание, вопрос - если я криворукий юзер и в записи ID=2 ввёл не "ООО Ромашка", а "ООО  Ромашка" (2 пробела) - считаем это одной организацией или разными?
это будут разные но это не наша проблема
источник

F

Flokker in phpGeeks
и я о таких деталях больше не говорю
источник

T🐜

The Ant 🐜 in phpGeeks
Andrey Shaposhnikov
Внимание, вопрос - если я криворукий юзер и в записи ID=2 ввёл не "ООО Ромашка", а "ООО  Ромашка" (2 пробела) - считаем это одной организацией или разными?
нормализуй юзерский запрос, или ищи как есть
источник

F

Flokker in phpGeeks
Andrey Shaposhnikov
Прекрасно!
Я правильно понимаю, что "сырые данные" - это примерно так:
ID ____ Org _____ FIO
1 ____ ООО Ромашка ____ Иванов И.И.
2 ____ ООО Ромашка ____ Петров В.В.
3 ____ ООО Лютик ____ Сидоров А.А.

?
да примерно так
источник

AS

Andrey Shaposhnikov in phpGeeks
Прекрасно. Расширяем исходные данные
ID ____ Org _____ FIO
1 ____ ООО Ромашка ____ Иванов И.И.
2 ____ ООО Ромашка ____ Петров В.В.
3 ____ ООО Лютик ____ Сидоров А.А.
4 ____ ООО Лютик ____ Иванов И.И.
5 ____ ООО Гвоздь ____ Тян Й.Й.
6 ____ ООО Ромашка ____ Иванов И.И.
7 ____ ООО Ромашка ____ Звонов В.В.

Вот такой исходник. Допустим, что юзер не криворук и всё введено верно. Что должно вывести? Я не знаю, там таблицу, строки или ещё что... Прям копипасти "полный отчёт".
источник

F

Flokker in phpGeeks
http://prntscr.com/tazptf вот выхлоп который мы получаем, так выглядит сам пдф файл после заполнения формы
источник

F

Flokker in phpGeeks
http://prntscr.com/tazqww вот форма которую он заполняет
источник

F

Flokker in phpGeeks
Andrey Shaposhnikov
Прекрасно. Расширяем исходные данные
ID ____ Org _____ FIO
1 ____ ООО Ромашка ____ Иванов И.И.
2 ____ ООО Ромашка ____ Петров В.В.
3 ____ ООО Лютик ____ Сидоров А.А.
4 ____ ООО Лютик ____ Иванов И.И.
5 ____ ООО Гвоздь ____ Тян Й.Й.
6 ____ ООО Ромашка ____ Иванов И.И.
7 ____ ООО Ромашка ____ Звонов В.В.

Вот такой исходник. Допустим, что юзер не криворук и всё введено верно. Что должно вывести? Я не знаю, там таблицу, строки или ещё что... Прям копипасти "полный отчёт".
отчет сообщеньками в телеге я заебусь искать
источник

T🐜

The Ant 🐜 in phpGeeks
Andrey Shaposhnikov
Прекрасно. Расширяем исходные данные
ID ____ Org _____ FIO
1 ____ ООО Ромашка ____ Иванов И.И.
2 ____ ООО Ромашка ____ Петров В.В.
3 ____ ООО Лютик ____ Сидоров А.А.
4 ____ ООО Лютик ____ Иванов И.И.
5 ____ ООО Гвоздь ____ Тян Й.Й.
6 ____ ООО Ромашка ____ Иванов И.И.
7 ____ ООО Ромашка ____ Звонов В.В.

Вот такой исходник. Допустим, что юзер не криворук и всё введено верно. Что должно вывести? Я не знаю, там таблицу, строки или ещё что... Прям копипасти "полный отчёт".
используй поисковый джвижок епта, откуда у тебя желание изобрести велик?
источник

AS

Andrey Shaposhnikov in phpGeeks
Вот теперь я вообще ни хрена не понял, если честно. У меня "логика сломалась".
У тебя есть 2 сущности - организации и авторы.
При этом исходная форма такова, что они свалены в кучу.
Тебе надо разделить исходную форму на уровень "организация" (он по идее выше) и "автор".
Исходно 1 организация и 1 автор.
Внутри блока ввода "организация" под автором должна быть кнопка "добавить автора".
И отдельно кнопка "добавить организацию", в которой будут свои авторы.
Если учесть реалии, что есть предметная область и количество организаций весьма конечно - берёшь любой autocompete компонент и предлагаешь варианты из ранее введённых организаций при вводе названия. Учитывая ленивость юзеров - 90% будут использовать autocomplete, что резко сократит возможные "вариации названий".

А так у тебя исходные данные через одно место...
источник

T🐜

The Ant 🐜 in phpGeeks
господи... зачем усложнять простые вещи?
источник

ES

Eugene She in phpGeeks
Все потому что нет нормального продакта
источник

AS

Andrey Shaposhnikov in phpGeeks
Если авторов не уникалим, то у тебя весь код сводится к простейшему:
Имеем исходный массив вида (типа из SQL любым методом)
$data = array(
1 => array('org'=>'ООО Ромашка','author'=>'Иванов B.B.'),....

Тебе на выходе надо получить уникальные массивы
$orgs = array();
$authors = array();
foreach($data as $item)
{
 if(!in_array($item['org'],$orgs)){ $orgs[] = $item['org']; }
 if(!in_array($item['author'],$authors)){ $authors[] = $item['author']; }
}

Всё, у тебя два массива с уникальными значениями. Без этой простыни
источник

T🐜

The Ant 🐜 in phpGeeks
Задача сводится к организации поиска по документам. Берешь поисковую бд и все. Нах выдумывать какое-то говно
источник

AS

Andrey Shaposhnikov in phpGeeks
The Ant 🐜
Задача сводится к организации поиска по документам. Берешь поисковую бд и все. Нах выдумывать какое-то говно
Я выше понял, что задача сводится к формированию PDF
источник

AS

Andrey Shaposhnikov in phpGeeks
Andrey Shaposhnikov
Если авторов не уникалим, то у тебя весь код сводится к простейшему:
Имеем исходный массив вида (типа из SQL любым методом)
$data = array(
1 => array('org'=>'ООО Ромашка','author'=>'Иванов B.B.'),....

Тебе на выходе надо получить уникальные массивы
$orgs = array();
$authors = array();
foreach($data as $item)
{
 if(!in_array($item['org'],$orgs)){ $orgs[] = $item['org']; }
 if(!in_array($item['author'],$authors)){ $authors[] = $item['author']; }
}

Всё, у тебя два массива с уникальными значениями. Без этой простыни
Увлёкся, и авторов тоже зауникалил :)
источник

F

Flokker in phpGeeks
Andrey Shaposhnikov
Вот теперь я вообще ни хрена не понял, если честно. У меня "логика сломалась".
У тебя есть 2 сущности - организации и авторы.
При этом исходная форма такова, что они свалены в кучу.
Тебе надо разделить исходную форму на уровень "организация" (он по идее выше) и "автор".
Исходно 1 организация и 1 автор.
Внутри блока ввода "организация" под автором должна быть кнопка "добавить автора".
И отдельно кнопка "добавить организацию", в которой будут свои авторы.
Если учесть реалии, что есть предметная область и количество организаций весьма конечно - берёшь любой autocompete компонент и предлагаешь варианты из ранее введённых организаций при вводе названия. Учитывая ленивость юзеров - 90% будут использовать autocomplete, что резко сократит возможные "вариации названий".

А так у тебя исходные данные через одно место...
Да в этом и проблема. что исходные данные в одном месте, вроде заказчик отписал что есть список. если так то все проще будет. смотри есть автор он может внести 5 организаций, если при написании доклада участвовал еще автор он добавляет еще автора и там тоже может внести 5 организаций(очень странно что автор относится к нескольким организациям но не суть я уже спорил на эту тему).
источник

AS

Andrey Shaposhnikov in phpGeeks
Flokker
Да в этом и проблема. что исходные данные в одном месте, вроде заказчик отписал что есть список. если так то все проще будет. смотри есть автор он может внести 5 организаций, если при написании доклада участвовал еще автор он добавляет еще автора и там тоже может внести 5 организаций(очень странно что автор относится к нескольким организациям но не суть я уже спорил на эту тему).
Код выше написал. Его достаточно. Будет уникалить и авторов, и организации
источник