В този урок ще разгледаме PDO CRUD – инструмент за създаване на формуляри и управление на база данни. PDO CRUD ви помага да създавате формуляри за вашите таблици на база данни само с няколко реда код, което прави бързо и лесно стартирането на приложение за база данни.
Има много налични разширения за абстракция на база данни и по-специално CRUD (създаване, четене, актуализиране и изтриване) за PHP и MySQL. И разбира се, ще намерите и търговски опции, които предоставят готови за използване функции и разширена поддръжка. В случай на комерсиални опции можете също да очаквате качествен код, корекции на грешки и нови подобрения.
Днес ще обсъдим инструмента PDO CRUD, наличен в CodeCanyon за закупуване на много разумна цена. Това е пълен инструмент за създаване на CRUD, който ви позволява да създавате приложения само чрез предоставяне на таблици на база данни и писане на няколко реда код.
Работи с множество бек-ендове на база данни, включително MySQL, Postgres и SQLite. В този усъвършенстван урок за PHP CRUD ще видим как да използваме PDO CRUD за изграждане на CRUD система с бекенд на базата данни MySQL.
Забележка:Si quieres aprender cómo hacer un CRUD en PHP y mySQL, da щракнете върху .
Инсталиране и конфигуриране
В този раздел ще видим как да инсталирате и конфигурирате инструмента PDO CRUD, след като го закупите и изтеглите от CodeCanyon.
Веднага след като го закупите, ще можете да изтеглите zip файла. Разархивирайте го и ще намерите директорията с основния код на приставката:PDOCrud/script . Копирайте тази директория във вашето PHP приложение.
Например, ако вашият проект е конфигуриран в /web/demo-app/public_html , трябва да копирате директорията на скрипта в /web/demo-app/public_html/script .
След това трябва да въведете подробности за задния край на вашата база данни в конфигурационния файл. Конфигурационният файл се намира на адрес /web/demo-app/public_html/script/config/config.php . Отворете този файл в любимия си текстов редактор и променете следните подробности в него.
$config["script_url"] ="https://my-demo-app";/************************ база данни * ***********************///Задайте името на хоста за свързване за база данни$config["hostname"] ="localhost";//Задайте name database$config["database"] ="demo_app_db";//Задайте потребителското име за достъп до базата данни$config["username"] ="demo_app";//Задайте pwd за потребителя на базата данни $config["password"] ="demo_app";//Задаване на типа база данни, който да се използва $config["dbtype"] ="mysql"
Както можете да видите, подробностите се разбират сами. $config["script_url"]
е зададен на URL адреса, който използвате за достъп до вашия сайт.
След като запазите данните за базата данни, сте готови да използвате инструмента PDO CRUD. В нашия пример ще създадем две MySQL таблици, които съдържат данни за служители и отдели.
- служители :съдържа информация за служителите
- отдел :съдържа информация за отдел
Отворете инструмента си за управление на база данни и изпълнете следните команди, за да създадете таблици, както току-що обсъдихме по-горе. Използвам phpMyAdmin за работа с бек-енд на базата данни на MySQL.
Първо, нека създадем таблицата на отделите.
СЪЗДАВАНЕ НА ТАБЛИЦА `department` ( `id` int(11) UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY, `department_name` varchar(255) NOT NULL DEFAULT '') ENGINE=MyISAM DEFAULT CHARSET=utf8;
След това ще създадем таблицата на служителите.
СЪЗДАВАНЕ НА ТАБЛИЦА `служител` ( `id` int(12) UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY, `dept_id` int(11) UNSIGNED NOT NULL, `first_name` varchar(255) NOT NULL DEFAULT_, `la varchar(255) NOT NULL DEFAULT '', `email` varchar(255) NOT NULL DEFAULT '', `phone` varchar(255) NOT NULL DEFAULT '') ENGINE=MyISAM DEFAULT CHARSET=utf8;
Както можете да видите, използвахме dept_id
колона в таблицата на служителите, която съдържа идентификатора на съответния отдел, съхранен в таблицата на отделите.
След като създадете таблиците във вашата база данни, ние сме готови да изградим интерфейс на приложението CRUD с помощта на инструмента PDO CRUD!
Как да настроите Basic CRUD
В този раздел ще видим как можете да настроите основен CRUD интерфейс с помощта на инструмента PDO CRUD, като напишете само няколко реда код.
Таблица на отдел
Ще започнем с таблицата на отделите.
Нека създадем department.php със следното съдържание. Ако вашият корен на документа е /web/demo-app/public_html/ , създайте department.php файл на /web/demo-app/public_html/department.php . Припомнете си, че вече копирахме директорията със скриптове в /web/demo-app/public_html/script .
dbTable("department")->render();
И сега, ако насочите браузъра си към department.php файл, трябва да видите нещо подобно:
фу! Само с два реда код имате готов за използване потребителски интерфейс на CRUD, който ви позволява да извършвате всички необходими действия за създаване, четене, актуализиране и изтриване на вашия модел. Да не говорим, че самият изглед на списъка по подразбиране съдържа много функции, включително:
- търсене
- вградена пагинация
- принт
- експортирайте записи във формат CSV, PDF или Excel
- операция за групово изтриване
- сортиране по колони
Кликнете върху Добавяне бутон от дясната страна и ще отвори формата за добавяне на запис на отдел.
Нека добавим няколко записа с помощта на Добавяне бутон и вижте как изглежда.
Както можете да видите, това е доста лек и чист интерфейс. Без почти никакви усилия изградихме CRUD за модела на отдела! След това ще видим как да направим същото за таблицата на служителите.
Таблица на служителите
В този раздел ще видим как да изградим CRUD за таблицата на служителите. Нека създадем employee.php със следното съдържание.
dbTable("employee")->render();
Това е почти същият код като последния път; просто трябва да променим името на таблицата. Ако щракнете върху Добавяне бутон, той също ви носи хубав формуляр, който ви позволява да добавите записа на служителите.
Може да сте забелязали един проблем:Dept ID полето е текстово поле, но би било по-добре като падащо меню, съдържащо името на отделите. Нека видим как да постигнем това.
getPDOModelObj()->select("department");$options =array( );foreach($data като $record) { $options[$record['id']] =$record['department_name'];}// променете типа на полето dept_id от текстово поле, за да изберете падащо$pdocrud-> fieldTypes("dept_id", "select");$pdocrud->fieldDataBinding("dept_id", $options, "", "","array");echo $pdocrud->dbTable("employee")->render( );
В този код имаме достъп до таблицата на отделите чрез PDO CRUD, за да можем да свържем името на отдела с идентификаторите на отделите. След това актуализирахме опциите за обвързване за полето идентификатор на отдела, така че да се изобразява като падащо меню (select
) списък.
Сега кликнете върху Добавяне бутон, за да видите как изглежда! Трябва да видите Dept Id полето вече се преобразува в падащо меню!
Нека добавим няколко записа на служители и да видим как изглежда списъкът със служители:
Това изглежда хубаво! Но тук имаме друг малък проблем:можете да видите, че Dept ID колоната показва идентификационния номер на отдела и би било хубаво вместо това да се покаже действителното име на отдела. Нека разберем как да постигнем това!
Нека преразгледаме кода на employee.php със следното съдържание.
getPDOModelObj()->select( "department");$options =array();foreach($data като $record) { $options[$record['id']] =$record['department_name'];}$pdocrud->fieldTypes("dept_id ", "select");$pdocrud->fieldDataBinding("dept_id", $options, "", "","array");$pdocrud->crudTableCol(array("first_name","last_name", "department_name" , "email","phone"));$pdocrud->joinTable("department", "employee.dept_id =department.id", "INNER JOIN");echo $pdocrud->dbTable("employee")-> render();
Тук създадохме свързване между таблиците на служителите и отделите с $pdocrud->joinTable
, и след това каза на PDO CRUD да изведе само името на служителя, името на отдела и информацията за връзка с $pdocrud->crudTableCol
.
И с тази промяна списъкът на служителите трябва да изглежда така:
Както можете да видите, скриптът PDO CRUD е доста гъвкав и ви позволява всяка възможна опция да персонализирате потребителския си интерфейс.
Досега обсъдихме как да настроим основен CRUD интерфейс. Ще видим още няколко опции, които бихте могли да използвате, за да подобрите и персонализирате потребителския си интерфейс на CRUD в следващия раздел.
Опции за персонализиране
В този раздел ще видим няколко опции за персонализиране, предоставени от инструмента PDO CRUD. Разбира се, не е възможно да преминете през всички опции, тъй като инструментът PDO CRUD предоставя много повече, отколкото бихме могли да обхванем в една статия, но ще се опитам да подчертая няколко важни.
Редактиране на линия
Вграденото редактиране е една от най-важните функции, която ви позволява бързо да редактирате запис на самата страница с обявата. Нека видим как да го активираме за страницата с списък на отделите.
Нека преразгледаме department.php скрипт, както е показано в следния фрагмент.
setSettings("inlineEditbtn", true);echo $pdocrud->dbTable("department")->render( );
Както можете да видите, току-що активирахме inlineEditbtn
настройка, а функцията за вградено редактиране е налице веднага!
Това е наистина удобна функция, която ви позволява да редактирате записи в движение!
Филтри
Както може би сте забелязали, страницата с списък на отделите вече предоставя безплатно текстово търсене за филтриране на записи. Въпреки това, може да искате да добавите свои собствени персонализирани филтри, за да подобрите функцията за търсене. Точно това са Филтрите опцията предоставя, тъй като ви позволява да създавате персонализирани филтри!
Ще използваме employee.php за тази функция, тъй като това е идеалният пример за използване. На страницата със списъци на служителите показваме името на отдела за всеки запис на служител, така че нека изградим филтър на отдел, който ви позволява да филтрирате записи по името на отдела.
Продължете и ревизирайте своя employee.php както е показано в следния фрагмент.
getPDOModelObj()->select("department");$options =array();foreach( $data като $record) { $options[$record['id']] =$record['department_name'];}$pdocrud->fieldTypes("dept_id", "select");//променете състоянието, за да изберете падащо меню $pdocrud->fieldDataBinding("dept_id", $options, "", "","array");//добавете данни с помощта на масив в падащото меню изберете$pdocrud->crudTableCol(array("first_name","last_name", " department_name", "email","phone"));$pdocrud->joinTable("department", "employee.dept_id =department.id", "INNER JOIN");$pdocrud->addFilter("department_filter", " Department", "dept_id", "dropdown");$pdocrud->setFilterSource("department_filter", $options, "", "", "array");echo $pdocrud->dbTable("employee")->render ();
Току-що добавихме два реда с извиквания на addFilter
и setFilterSource
, и с това списъкът на служителите изглежда по следния начин:
Не е ли готино? Само с два реда код добавихте своя персонализиран филтър!
Качвания на изображения
Това е задължителна функция, ако искате да настроите качване на файлове във вашите формуляри. Само с един ред код можете да конвертирате обикновено поле в поле за качване на файл, както е показано в следния фрагмент.
Предполагам, че имате profile_image
поле във вашата таблица на служителите и че сте готови да го конвертирате в поле за качване на файлове!
fieldTypes("profile_image", "image");echo $pdocrud->dbTable("служител")-> render();
Това е! Потребителите вече ще могат да качват изображение в profile_image
поле.
CAPTCHA
В днешно време, ако искате да спасите сайта си от спам, CAPTCHA проверката е съществена функция. Инструментът PDO CRUD вече предоставя няколко опции за избор.
Той предоставя две опции:CAPTCHA и reCAPTCHA. Ако изберете опцията CAPTCHA, тя представя математически пъзел, който потребителят да реши. От друга страна, ако изберете опцията reCAPTCHA, тя представя известният Аз не съм робот пъзел!
Ако искате да добавите прост пъзел CAPTCHA, трябва да добавите следния ред, преди да изобразите своя CRUD.
$pdocrud->formAddCaptcha("captcha");
От друга страна, ако предпочитате reCAPTCHA, можете да постигнете същото, като използвате следния фрагмент.
$pdocrud->recaptcha("your-site-key","site-secret");
Просто трябва да замените your-site-key
и site-secret
аргументи с валидни идентификационни данни от Google.
Досега обсъдихме опции, които подобряват функционалността на приложението ви. След това ще видим как бихте могли да промените кожата и по този начин изгледа и усещането на приложението си.
Кожи
Ако не ви харесва кожата по подразбиране, имате няколко опции, от които да избирате. Инструментът PDO CRUD предоставя тъмни, светли, зелени и разширени кожи като други опции за избор.
Например следният списък е базиран на зелената тема.
Изглежда хубаво, нали?
Pure Bootstrap
Въпреки че кожата по подразбиране вече поддържа адаптивни оформления, инструментът PDO CRUD също поддържа интегриране на библиотека Bootstrap!
Трябва да използвате следния фрагмент, ако искате да изградите оформлението си с помощта на библиотеката Bootstrap.
dbTable("department")->render();предварително>И ето как изглежда:
4 най-добри предварително изработени PHP CRUD интерфейси от CodeCanyon
CodeCanyon е дом на десетки добре прегледани, лесни CRUD PHP интерфейси. Ако не искате да разглеждате всички PHP CRUD строители на сайта, вижте тези пет опции:
1. PHP CRUD генератор
С повече от 20 теми за Bootstrap и страхотни разширени функции, този предварително изработен интерфейс изглежда страхотно и се представя добре. Той върши страхотна работа за извършване на анализ на вашите данни. PHP CRUD Generator също идва с инструменти, които ви позволяват да направите своя идеален административен панел.
2. Многофункционално приложение Laravel
Имате ли нужда от HTML5 CRUD приложение с всички камбани и свирки? Тогава Laravel е добър избор за вас. Това лесно PHP CRUD приложение е изпълнено с функции като:
- преден и заден шаблон
- изпращане по имейл до потребители и групи
- функция за забравена парола
- блокирани и разрешени IP адреси
3. Admin Lite—PHP администраторски панел и управление на потребителите
Ако следващият ви проект се прави с CodeIgniter, ще искате Admin Lite. Това HTML5 CRUD приложение ви помага да останете на върха на вашата уеб разработка с готови за използване модули. Admin Lite се предлага с администраторско и потребителско табло и поддържа множество езици. Можете да преобразувате съществуващия си панел в този, за да можете да продължите откъдето сте спрели.
4. Cicool—Page, Form, REST API и CRUD Generator
Ние завършваме този списък с Cicool. Това е лесен CRUD PHP генератор с много функции. Този конструктор на WordPress CRUD PHP може да се използва и за създаване на страници, формуляри и REST API. Използването на Cicool ви позволява да използвате готови компоненти и входове, за да създадете това, от което се нуждаете. Благодарение на постоянните му актуализации, вие ще знаете, че Cicool се поддържа.
Научете повече за света на кода с Envato Tuts+
Няма съмнение, че кодирането е дълбока тема. Има много за учене и е лесно да се изгубите. Ако искате да придобиете много полезни умения за кодиране с някои насоки, вижте Envato Tuts+. Нашите уроци, ръководства и курсове за код ви предлагат инструкциите, от които се нуждаете, докато учите. Можете да разгледате някои от тях по-долу:
- БЕЗПЛАТНО PHPPHP Fundamentals Jeremy McPeak
- PHPPHP Цели числа, плаващи числа и числови низове Монти Шокейн
- PHPHКак да качите файл в PHP (с пример)Sajal Soni
- WordPressКак да използвате кеширане на браузъра в WordPressSajal Soni
И не забравяйте да се насочите към нашия YouTube канал! Той е пълен с видео уроци и курсове, които се преподават от нашите експертни инструктори.
Как да станете уеб разработчик