Media is too big
VIEW IN TELEGRAM
PHP, PDO SQL Injection
SQL Injection минимум который должен знать каждый разработчик код которого работает в production
00:00 Вступление и оглавление
01:06 Определения (теория)
01:45 Чем опасны SQL Injection
03:34 Практический стенд
06:12 Обхода аутедентификации
09:23 Модификации базы данных
11:47 Защита с помощью placeholder
15:49 Защита там где placeholder не применимы
источник
@phpshka
SQL Injection минимум который должен знать каждый разработчик код которого работает в production
00:00 Вступление и оглавление
01:06 Определения (теория)
01:45 Чем опасны SQL Injection
03:34 Практический стенд
06:12 Обхода аутедентификации
09:23 Модификации базы данных
11:47 Защита с помощью placeholder
15:49 Защита там где placeholder не применимы
источник
@phpshka
❤12👍5🔥1
Composer, Создание своего пакета
▪PHP, Composer, Советы по созданию пакета, composer.json
▪PHP, composer, публикация пакета на packagist и github
▪Code style вашего проекта
Интеграция travis-ci в ваш php проект
▪PHPSTAN. Статический анализ PHP проекта
PHPINSIGHTS, Статический ▪анализ в вашего PHP проекта
▪PSALM, статический анализ ▪PHP проекта
▪PHPMD, статический анализ php mess detector
📌 Источник
@phpshka
▪PHP, Composer, Советы по созданию пакета, composer.json
▪PHP, composer, публикация пакета на packagist и github
▪Code style вашего проекта
Интеграция travis-ci в ваш php проект
▪PHPSTAN. Статический анализ PHP проекта
PHPINSIGHTS, Статический ▪анализ в вашего PHP проекта
▪PSALM, статический анализ ▪PHP проекта
▪PHPMD, статический анализ php mess detector
📌 Источник
@phpshka
👍9🔥2❤1
🟡 Дайджест полезных материалов из мира : PHP за неделю
Почитать:
— EasyAdmin и Mercure: реальный юзкейс
— Тестирование грамматики Llama Cpp, основанной на ограничениях выборки
— Symfony Json RPC API Bundle — простое API со всем необходимым
— PHP'de Zaman Gecikmeli Döngüler ve Kontrol Akışları
— JS OR php
— Building a Simple PHP CRUD Operation
— Setting Up PHP on Neovim with NvChad
— PHP Dizi Fonksiyonları
— Using An object method as a callable to update GDPR consent in DB
— Database Transactions in Laravel
— Symfony Station Communiqué — 18 August 2023. A look at Symfony, Drupal, PHP, Cybersecurity, and Fediverse news!
— How to use Arrow Function in PHP with examples
— Making the case for Laravel as a Next.js alternative
Посмотреть:
🌐 Создаём профиль через запрос к базе данных (html/css/php/sql/javaScript) (⏱ 46:03)
Хорошего дня!
@phpshka
Почитать:
— EasyAdmin и Mercure: реальный юзкейс
— Тестирование грамматики Llama Cpp, основанной на ограничениях выборки
— Symfony Json RPC API Bundle — простое API со всем необходимым
— PHP'de Zaman Gecikmeli Döngüler ve Kontrol Akışları
— JS OR php
— Building a Simple PHP CRUD Operation
— Setting Up PHP on Neovim with NvChad
— PHP Dizi Fonksiyonları
— Using An object method as a callable to update GDPR consent in DB
— Database Transactions in Laravel
— Symfony Station Communiqué — 18 August 2023. A look at Symfony, Drupal, PHP, Cybersecurity, and Fediverse news!
— How to use Arrow Function in PHP with examples
— Making the case for Laravel as a Next.js alternative
Посмотреть:
🌐 Создаём профиль через запрос к базе данных (html/css/php/sql/javaScript) (⏱ 46:03)
Хорошего дня!
@phpshka
👍6❤3🔥2
⚡Легкий способ получать свежие обновлении и следить за трендами в разработке на вашем языке. Находите свой стек и подписывайтесь:
Машинное обучение: @ai_machinelearning_big_data
Go: @Golang_google
C#: @csharp_ci
Базы данных: @sqlhub
Python: @pythonl
C/C++/: @cpluspluc
Data Science: @data_analysis_ml
Devops: @devOPSitsec
Rust: @rust_code
Javascript: @javascriptv
React: @react_tg
PHP: @phpshka
Docker: @docker
Android: @android_its
Мобильная разработка: @mobdevelop
Linux: linuxacademy
Big Data: t.iss.one/bigdatai
Хакинг: @linuxkalii
Java:@javatg
Собеседования: @machinelearning_interview
💼 Папка с вакансиями: t.iss.one/addlist/_zyy_jQ_QUsyM2Vi
Папка Go разработчика: t.iss.one/addlist/MUtJEeJSxeY2YTFi
Папка Python разработчика: t.iss.one/addlist/eEPya-HF6mkxMGIy
🔥ИТ-Мемы: t.iss.one/memes_prog
🇬🇧Английский: @english_forprogrammers
📕Ит-книги https://t.iss.one/addlist/BkskQciUW_FhNjEy
Машинное обучение: @ai_machinelearning_big_data
Go: @Golang_google
C#: @csharp_ci
Базы данных: @sqlhub
Python: @pythonl
C/C++/: @cpluspluc
Data Science: @data_analysis_ml
Devops: @devOPSitsec
Rust: @rust_code
Javascript: @javascriptv
React: @react_tg
PHP: @phpshka
Docker: @docker
Android: @android_its
Мобильная разработка: @mobdevelop
Linux: linuxacademy
Big Data: t.iss.one/bigdatai
Хакинг: @linuxkalii
Java:@javatg
Собеседования: @machinelearning_interview
💼 Папка с вакансиями: t.iss.one/addlist/_zyy_jQ_QUsyM2Vi
Папка Go разработчика: t.iss.one/addlist/MUtJEeJSxeY2YTFi
Папка Python разработчика: t.iss.one/addlist/eEPya-HF6mkxMGIy
🔥ИТ-Мемы: t.iss.one/memes_prog
🇬🇧Английский: @english_forprogrammers
📕Ит-книги https://t.iss.one/addlist/BkskQciUW_FhNjEy
👍4🔥1
Эта платформа разработана с учетом максимальной простоты в использовании и предлагает инструменты, необходимые для разработки мощных приложений. Она совместима с Symfony и Laravel, что делает ее гибкой в использовании и интеграции с другими технологиями.
▪Github
@phpshka
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7❤6🔥1
«Успейте за 5 месяцев создать систему онлайн обучения», — говорили они, «Успеем к 1 сентября», — сказали мы
https://habr.com/ru/articles/756468/
@phpshka
https://habr.com/ru/articles/756468/
@phpshka
Хабр
«Успейте за 5 месяцев создать систему онлайн обучения», — говорили они, «Успеем к 1 сентября», — сказали мы
Пока школьники выбирают тетрадки, а студенты капают слезинками на барные столики в честь приближающихся сессий, я решил вспомнить, как мы делали достаточно крупную и крутую систему онлайн обучения. Но...
👍3
Как мы планировали повысить версию PHP за месяц, а потратили на это год
https://habr.com/ru/companies/yandex/articles/756498/
https://habr.com/ru/companies/yandex/articles/756498/
👍1
PHPize.online: ещё одна онлайн площадка для работы с PHP с шахматами и библиотекаршами. (SQL и ChatGPT)
https://habr.com/ru/articles/756844/
https://habr.com/ru/articles/756844/
Хабр
PHPize.online: ещё одна онлайн площадка для работы с PHP с шахматами и библиотекаршами. (SQL и ChatGPT)
История началась чуть больше двух лет назад. В силу обстоятельств я на две недели остался заперт дома и проводил большую часть времени в компании ноутбука. Чтобы отвлечься рефрешил странички...
❤4👍1
🔥 Дайджест полезных материалов из мира : PHP за неделю
Почитать:
— PHPize.online: ещё одна онлайн площадка для работы с PHP с шахматами и библиотекаршами. (SQL и ChatGPT)
— PHP Fibers: практический пример
— Как мы планировали повысить версию PHP за месяц, а потратили на это год
— «Успейте за 5 месяцев создать систему онлайн обучения», — говорили они, «Успеем к 1 сентября», — сказали мы
— Simplify Multilingual Applications with LangifyLaravel
— Supercharge Your Laravel Development with Laravel-ProjectAssist
— Introducing TokensValidation: Secure Authentication & Authorization for Web Apps
— Authenticate With Any OAuth Provider With Laravel Socialite
— Expert Web Development Services in the UK
— Why Boilerplate Projects are Not BAD
— An Argument for Phased Coding
— Habilitando PHP xdebug no container docker
— Is WordPress safe? Or why website security should be handled carefully
— Laravel Ecommerce Tutorial: Part 11, The Homepage
Посмотреть:
— PHP tips : use these methods instead of using loops
Хорошего дня!
@phpshka
Почитать:
— PHPize.online: ещё одна онлайн площадка для работы с PHP с шахматами и библиотекаршами. (SQL и ChatGPT)
— PHP Fibers: практический пример
— Как мы планировали повысить версию PHP за месяц, а потратили на это год
— «Успейте за 5 месяцев создать систему онлайн обучения», — говорили они, «Успеем к 1 сентября», — сказали мы
— Simplify Multilingual Applications with LangifyLaravel
— Supercharge Your Laravel Development with Laravel-ProjectAssist
— Introducing TokensValidation: Secure Authentication & Authorization for Web Apps
— Authenticate With Any OAuth Provider With Laravel Socialite
— Expert Web Development Services in the UK
— Why Boilerplate Projects are Not BAD
— An Argument for Phased Coding
— Habilitando PHP xdebug no container docker
— Is WordPress safe? Or why website security should be handled carefully
— Laravel Ecommerce Tutorial: Part 11, The Homepage
Посмотреть:
— PHP tips : use these methods instead of using loops
Хорошего дня!
@phpshka
👍6❤1🔥1🥰1🤔1
🤔 Каждый начинающий айтишник задумывался какой язык программирования выбрать.
Наш канал поможет избавиться Вам от этого гнетущего вопроса.
Единственный вопрос который вы должны задать это «А может на PHP?»
Посмотреть канал
Наш канал поможет избавиться Вам от этого гнетущего вопроса.
Единственный вопрос который вы должны задать это «А может на PHP?»
Посмотреть канал
Telegram
А может на PHP?
Канал любителей велосипедов.
По вопросам - @fedor2dostoevsky
Остальные каналы "А может?" - @maybe_channel
По вопросам - @fedor2dostoevsky
Остальные каналы "А может?" - @maybe_channel
👍1
💻📖 hacker-laws
Отличный, пополняемый список знаний, в который включены теории, законы, принципы, паттерны разработки и многое другое, что однозначно будет полезно знать каждому PHP разработчику.
@phpshka
Отличный, пополняемый список знаний, в который включены теории, законы, принципы, паттерны разработки и многое другое, что однозначно будет полезно знать каждому PHP разработчику.
@phpshka
GitHub
GitHub - dwmkerr/hacker-laws: 🧠 Laws, Theories, Principles and Patterns for developers and technologists.
🧠 Laws, Theories, Principles and Patterns for developers and technologists. - dwmkerr/hacker-laws
❤5👍2
Тип колонки enum используется для хранения данных, которые могут принимать определённые значения из заранее определённого набора.
Он обеспечивает ограничение значений, которые может принимать колонка, и позволяет более строго контролировать данные.
Это может быть полезно для хранения статусов, категорий, типов или любых других значений, которые могут быть заданы только из ограниченного набора вариантов.
А что на практике? Давайте рассмотрим.
Допустим у нас есть таблица со списком платежей, содержащая колонку status со следующими значениями:
CREATE TABLE `payments`(
`id` INT UNSIGNED NOT NULL AUTO_INCREMENT,
`status` ENUM('new', 'progress', 'done', 'fauled') NOT NULL,
KEY(`id`)
) CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;Нюанс изменения enum поля в том, что при его редактировании сбрасываются значения колонки в null для всех строк таблицы, а то и вовсе получим ошибку Data truncated for column 'status' at row 3. То есть, чтобы корректно изменить enum поле, нужно куда-то сохранить данные. План действий будет таков:
1. Создать новую enum колонку с правильным набором данных;
2. Скопировать значение из старой колонки в новую и сразу применить исправление значения;
3. Удалить старую enum колонку;
4. Переименовать новую enum колонку.
При использовании фреймворка Laravel это будет выглядеть следующим образом:
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\DB;
use Illuminate\Support\Facades\Schema;
return new class extends Migration
{
public function up(): void
{
// Создаём новую колонку
Schema::table('payments', function (Blueprint $table) {
$table->enum('tmp_status', ['new', 'progress', 'done', 'failed']);
});
// Копируем значения из enum колонки в новую с корректировкой значения
DB::statement('UPDATE payments SET tmp_status = (IF status = \'fauled\' THEN \'failed\' ELSE status END IF)');
// Удаляем старую колонку
Schema::table('payments', function (Blueprint $table) {
$table->dropColumn('status');
});
// Переименовываем колонку
Schema::table('payments', function (Blueprint $table) {
$table->renameColumn('tmp_status', 'status');
});
}
};На языке SQL эти действия будут выглядеть следующим образом:
@phpshka
Please open Telegram to view this post
VIEW IN TELEGRAM
❤7👍7🔥2
🔥Что нового в новом PHP 8.3.
PHP 8.3 выйдет 23 ноября 2023 года; в нем будут улучшения для классов
📌Подробнее
@phpshka
PHP 8.3 выйдет 23 ноября 2023 года; в нем будут улучшения для классов
readonly, новая функция json_validate(), дополнения к недавно добавленному классу Randomizer, обнаружение переполнения стека и многое другое.📌Подробнее
@phpshka
stitcher.io
What's new in PHP 8.3 | stitcher.io
All new features, performance upgrades, and deprecations in PHP 8.3
❤8👍4🔥2