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

Программирование [страница: 3]

Поиск рекурсивно в многоуровневом массиве пустых значений на PHP. Функция писалась для проверки json по-быстрому.

Тернарный оператор - это такой урезанный аналог if else для двух значений. Также его удобно использовать если предварительно нужно проверить существование значения. Ниже несколько примеров использования.

Коротко об использовании сессий в Yii2. Такая шпаргалка которая всегда под руками.

В php работа с сессиями происходит через глобальный массив $_SESSION. В Yii 2 есть компонент yii\web\Session, который доступен через Yii::$app->session.

Это как и обычные сессии в PHP но с некоторыми дополнительными возможностями. 

Инструкция по добавлению мета тегов в заголовок страницы на фреймворке Yii2.

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

Yii2 обладает собственным классом загрузки файлов \Yii\we\UploadedFile, который представляет файл в виде объекта для удобства дальнейшей работы. 

Примеры для выборки, обновления, записи и удаления данных в БД при помощи Active Record на Yii2.

Active Form на Yii2 используется для создания форм, как ни странно. Приведу самый простой пример, достаточный для понимания как создавать формы при помощи этого компонента.

Как сравнить между собой неизвестное количество массивов и как вывести их общие значения? Таким вопросом я задался недавно.

Скрытие части email адреса используется в различных формах восстановления паролей для того, чтобы улучшить безопасность при восстановлении доступа и при этом информировать пользователя, на какой адрес отправляется письмо.

Unisender - это инструмент для массовых рассылок и отправки одиночных писем.

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

REST или в полной форме, Representational State Transfer стало стандартной архитектурой проектирования для разработки веб-API. 

REST является очень простым интерфейсом управления информацией без использования каких-то дополнительных внутренних прослоек. Каждая единица информации однозначно определяется глобальным идентификатором, таким как URL. Каждая URL в свою очередь имеет строго заданный формат.

Однажды мне понадобилось в методе возвращать объект в качестве негативного результата, например вместо false. Это было необходимо для совместимости с существующим кодом. Ранее этот метод возвращал объект с результатом, но после корректировок он не всегда возвращал результат обработки.

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

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

Сделал такую заготовку под класс для записи чего-либо в текстовые файлы.

 

В интернете масса статей по созданию блога на Yii2 и я добавлю еще одну. Моя статья выгодно отличается от других тем, что лично для меня она построена на моем же опыте работы с Yii2. Всем прочим - на собственное усмотрение.

Делал для себя заметки по Yii2 когда разбирался с созданием блога, установкой и так далее. Данная статья написана на основе собственного опыта и информации из сети. Пошагово расписано создание блога и некоторые мелочи, все по собственному опыту.

 

После создания сайта на ModX нужно было включить ЧПУ, так как без него не комильфо. Далее простая инструкция как это сделать.

Пример создания класса для работы с базой данных с использованием шаблона проектирования singleton. Пример упрощенный, много кода придется писать под свои задачи, но его достаточно для понимания как это работает.

PHP функция для изменения размера base64 кодированного изображения.

В процессе поиска новой работы приходится делать всякие тестовые задания, и вот один из результатов - мини-блог без авторизации с анонимным комментированием. Конечно же, такое нельзя назвать сайтом, но как учебное пособие подойдет.

Моя доработка стандартного модуля рассылки blocknewsletter для Prestashop 1.6. Теперь он работает без перезагрузки страницы и статусы [email выслан, уже есть и т.д.] корректно отображаются.

При добавлении видео с ТыТрубы на страницу CMS возникает ошибка неправильное поле content или что-то подобное.

Как можно быстро прикрутить простую валидацию формы на jQuery.

Упрощаем регистрацию путем уменьшения количества полей до минимума: ФИО, email, город, телефон.

Нашел в сети какой-то модуль заказа звонка и переписал его под ajax. Сам модуль был неплохой но очень кривой. Из преимуществ - в админке отображается список заказов звонков, на почту приходит email (не работает, но пофиг), поддержка turbosms (не проверял).

Вывод ul li списка можно разбить на отдельные блоки при помощи логики шаблонизатора Smarty. 

При помощи этого кода можно создать модуль простого меню или модуль категорий на какой-либо странице. Будет очень полезно для начинающих разработчиков да и опытным в копилку.

Theme Configurator - это модуль Prestashop 1.6 который позволяет добавлять баннеры на страницы и редактировать опции темы. В некоторых случаях его функционала недостаточно и я напишу как добавить новый хук.

Обновлял один из своих старых проектов на Prestashop 1.5 до последней версии при помощи модуля 1-Click Upgrade. Всвязи с тем что на сайте был нестандартный шаблон, не было до конца ясно, пойдет ли все так как нужно.

Есть такой модуль для Prestashop который отображает список комбинаций товара на странице. Всем он хорош но платный.

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

Разработчики Prestashop предусмотрели возможность переопределения классов для модификации или расширения существующего функционала не затрагивая ядро и исключая возможность сломать функционал при обновлении.

Это краткое руководство по добавлению кнопки сравнения на страницу товара в Prestashop 1.6.

Статья про работу с cookie на PHP.

То же самое попробую сделать с использованием jQuery.

Баг модуля поиска Битрикса search.page при вводе поисковой фразы на кириллице. Проявляется в том что из url приходит кодированная фраза которая не декодируется в модуле.

Простой скрипт для изменения значения при клике на стрелки + или - на jQuery.

Как сделать автоматическое создание заказа при покупке в один клик.

Пару примеров как это сделать.

Формат int не позволяет начинать строку с нуля, поэтому, когда возникает необходимость в таком числе (например, 000023), используем следующий код.

В настоящее время ssl на сайте не роскошь а средство безопасности. Это дорогое удовольствие, особенно если хочется видеть в адресной строке название своей организации (ну типа солидная у нас фирма, хехе), например как у твиттера. Но, помечтав и поумерив аппетиты, можно просто вернуться к зелененькому значку https. 

Сегодня в веб-среде вопрос безопасности является первостепенным. И несмотря на то, что наблюдается рост популярности электронной коммерции, необходимость предоставлять свои персональные данные в Интернете отпугивает многих потенциальных клиентов. Управляя успешным интернет-бизнесом сегодня, Вы обязаны гарантировать клиентам, что вся информация, которую они предоставляют, будет сохранена в тайне, потому что если у клиента не будет такой уверенности, он вряд ли будет покупать что-либо у вас. Также важна безопасность для внутренних каналов связи организации и ее подразделений, связанных между собой через Интернет. Но все не так плохо. В ответ на растущее количество случаев мошенничества пользователи становятся более подкованными в области интернет-безопасности. Все чаще и чаще люди обращают внимание на наличие замка в адресной строке и приставки "https", свидетельствующих о наличии безопасного соединения между веб-сервером и браузером перед вводом своих персональных данных. SSL-cертификаты можно разделить на несколько групп:

С проверкой домена (DV) — подтверждают подлинность доменного имени. Не содержат информации о компании.

С проверкой организации (OV) — содержат информацию не только о домене, но и о компании, которой выдан сертификат. Пользуются большим доверием у пользователей.

С расширенной проверкой (EV) — обеспечивают наивысшее доверие клиентов. Когда пользователь находится на сайте с EV SSL сертификатом, браузер подсвечивает адресную строку зеленым цветом.

В отличие от этого калькулятора не требует подгрузки скриптов извне. Умеет расчитывать стоимость по основным параметрам без дополнительных услуг типа установки, откосов и т.д. Достаточно для простого просчета.

Бывают ситуации когда нужно разместить кнопки "поделиться" на странице списка новостей. Как правило, такие кнопки размещают на странице отдельной новости и "поделиться" в этом случае можно без проблем, так как присутствует конечный URL страницы. В списке новостей нет URL конечной страницы.

Так как двойной слеш в URL дает дублирование страницы для SEO, нужно удалять его.

Пример получения информации текущего пользователя Twitter через API.

Получаем данные пользователя из вконтакта.

Как ни странно, нет подробной инструкции как это сделать, может меня забанили в гугле или он у меня сломан.

Мне понадобилось разобраться как работает скидка на количество товаров в корзине и я с этим разобрался, ниже описываю как это работает.

Карта сайта в формате HTML представляет собой страницу со ссылками на материалы сайта. Она помогает посетителям определиться с нужными им материалами вашего сайта, а так же ускорить его индексацию.

HTML карта сайта - вещь не обязательная, но являющаяся признаком хорошего тона. Наверное, для сайта, состоящего из трех страниц, карта сайта в формате HTML не нужна. Чего не скажешь о карте сайта в формате XML.

При вводе какого-то значения в один input это значение дублируется в другой input.

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

Шпаргалка. Простой и понятный ajax с использованием jQuery и php-обработчика и для примера этим скриптом регистрируется пользователь в битриксе.