Выбор первых букв Имя Отчество

Все вопросы/проблемы по установке и использовании.
Ответить
Аватара пользователя
lilrock
Сообщения: 36
Зарегистрирован: 24 июл 2021, 18:42
Имя: Lil Rock
Откуда: Ташкент, Узбекистан

Выбор первых букв Имя Отчество

Сообщение lilrock »

Есть поля Фамилия Имя Отчество! Иванов Иван Иванович
Как сделать чтобы получилось Иванов И.И.?
Аватара пользователя
alcompstudio
Спонсор
Спонсор
Сообщения: 1519
Зарегистрирован: 03 янв 2016, 20:42
Имя: Александр
Откуда: Мир

Re: Выбор первых букв Имя Отчество

Сообщение alcompstudio »

В поле MySQL формула прописываем такую конструкцию

Код: Выделить всё

CONCAT([409],' ',LEFT([410],1),'. ',LEFT([411],1),'. ')
Где 409 - поле с Фамилией
410 - поле с Именем
411 - поле с Отчеством.

Тут просто оставляем первую букву в имени и отчестве и добавляем точки.
Аватара пользователя
lilrock
Сообщения: 36
Зарегистрирован: 24 июл 2021, 18:42
Имя: Lil Rock
Откуда: Ташкент, Узбекистан

Re: Выбор первых букв Имя Отчество

Сообщение lilrock »

Спасибо!!!!
Аватара пользователя
ODI
Сообщения: 61
Зарегистрирован: 25 май 2019, 14:41
Имя: Вячеслав Одишария
Откуда: РФ, СПб
Организация: ODI.LEGAL - юридические услуги
Контактная информация:

Re: Фамилия Имя Отчество -> Фамилия И.О.

Сообщение ODI »

Как сделать то же, если Фамилия Имя Отчество одной строкой в одном поле? Т.е. вводим Иванов Иван Иванович, а в php-поле при сохранении отображается Иванов И.И.
Аватара пользователя
ODI
Сообщения: 61
Зарегистрирован: 25 май 2019, 14:41
Имя: Вячеслав Одишария
Откуда: РФ, СПб
Организация: ODI.LEGAL - юридические услуги
Контактная информация:

Re: Выбор первых букв Имя Отчество

Сообщение ODI »

Такую конструкцию нашёл:

Код: Выделить всё

$str = [302];
$m = explode(' ', $str);
echo $m[0] . ' ' . substr($m[1],0,2) . '.' . substr($m[2],0,2) . '.' ;
...
[field_302] => Иванов Иван Иванович
[field_530] =>
...

Но как сделать, чтобы в php-поле (530) на странице записи отобразилось Иванов И.И.?
nruslan2
Сообщения: 2435
Зарегистрирован: 14 окт 2020, 09:13
Имя: Ruslan
Откуда: Moscow

Re: Выбор первых букв Имя Отчество

Сообщение nruslan2 »

https://docs.rukovoditel.net.ru/index.php?p=104
Чтобы вывести или сохранить значения в базе, значение необходимо присвоить переменной $output_value
Аватара пользователя
ODI
Сообщения: 61
Зарегистрирован: 25 май 2019, 14:41
Имя: Вячеслав Одишария
Откуда: РФ, СПб
Организация: ODI.LEGAL - юридические услуги
Контактная информация:

Re: Выбор первых букв Имя Отчество

Сообщение ODI »

Это я прочитал, но не понимаю, как это сделать (не прогер совсем).
nruslan2
Сообщения: 2435
Зарегистрирован: 14 окт 2020, 09:13
Имя: Ruslan
Откуда: Moscow

Re: Выбор первых букв Имя Отчество

Сообщение nruslan2 »

заместо echo написать $output_value=
Аватара пользователя
ODI
Сообщения: 61
Зарегистрирован: 25 май 2019, 14:41
Имя: Вячеслав Одишария
Откуда: РФ, СПб
Организация: ODI.LEGAL - юридические услуги
Контактная информация:

Re: Выбор первых букв Имя Отчество

Сообщение ODI »

Ура! Получилось! Премного благодарен!
triadax
Сообщения: 165
Зарегистрирован: 14 фев 2020, 09:59
Имя: Сергей
Откуда: Россия

Re: Выбор первых букв Имя Отчество

Сообщение triadax »

Для варианта, когда ФИО хранится в разных строках:

Код: Выделить всё

$name = [1];    // Имя
$fname = [2]; // Фамилия
$oname = [3]; // Отчество

// Получаем инициалы из имени и отчества
$initials = mb_substr($name, 0, 1) . '.' . mb_substr($oname, 0, 1) . '.';

// Формируем результат
$output_value = $fname . ' ' . $initials;
Ответить