Бортовой журнал Ктулху

Программирование

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

Есть стандартный виджет форм, через который реализована загрузка файла и стандартная проблема с двойной отправкой.

Запись в файл на C++. Каждая запись с новой строки.

Base64 - это способ закодировать некие данные при помощи 64-х символов (a-zA-Z0-9) ASCII и дополнительных символов.

Сложность определения состоит в том, что закодированная строка для программы ничем не отличается от любой другой строки. Можно, конечно, пытаться искать по отсутствию пробелов (не сработает для одиночных слов), по наличию кириллицы (не сработает для некириллических строк) или по наличию спецсимволов (актуально только для HTML).

Вместо этого можно использовать вышеперечисленные методы вместе как дополнительный  инструмент определения.

Самый простой способ убрать все пробелы - это комбинация str_replace и trim. Еще одна шпаргалка.

Понадобилось мне заполнять на основе ассоциативного массива выпадающий список <select><option></option></select> используя jQuery. Каких-то готовых решений нет, каждый пишет свой велосипед. Вот я тоже напишу свой, но с бантиками.

Как связать две таблиц через ActiveRecord Yii2, используя промежуточную таблицу.

В связи с переходом на https возникла проблема при получении файлов при помощи функции file_get_contents, а именно,file_get_contents(): SSL operation failed with code 1. OpenSSL Error messages:↵error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed.

Такое вот решение нашлось в процессе создания формы на базе виджета ActiveForm и сохранения без перезагрузки:

1. используем валидацию на клиенте.

2. ловим событие beforeSubmit и отправляем Ajax-запрос на обработчик.

При использовании фреймов частая проблема - это неполное отображение содержимого вследствие его динамичности на различных разрешениях. Например, на широкоформатном мониторе условный фрейм отображает все содержимое, а на маленьком мониторе часть содержимого может скрываться нижней границей фрейма из-за его (содержимого) адааптивности. Если сделать фрейм зависимым от высоты содержимого, то такой проблемы не будет.