sql >> Databáze >  >> RDS >> Mysql

Rychle vytvořte rozhraní PHP CRUD pomocí nástroje PDO Advanced CRUD Generator Tool

V tomto tutoriálu se podíváme na PDO CRUD – nástroj pro tvorbu formulářů a správu databází. PDO CRUD vám pomáhá vytvářet formuláře pro vaše databázové tabulky pomocí pouhých několika řádků kódu, což umožňuje rychlé a snadné zavedení databázové aplikace.

Existuje spousta dostupných rozšíření pro abstrakci databáze a konkrétně generování CRUD (create, read, update, and delete) pro PHP a MySQL. A samozřejmě také najdete komerční možnosti, které poskytují funkce připravené k použití a rozšířenou podporu. V případě komerčních možností můžete také očekávat kvalitní kód, opravy chyb a nová vylepšení.

Dnes budeme diskutovat o nástroji PDO CRUD, který je k dispozici na CodeCanyon za velmi rozumnou cenu. Je to kompletní nástroj pro tvorbu CRUD, který vám umožňuje vytvářet aplikace pouhým poskytnutím databázových tabulek a napsáním několika řádků kódu.

Pracuje s více databázovými back-endy, včetně MySQL, Postgres a SQLite. V tomto pokročilém tutoriálu PHP CRUD uvidíme, jak používat PDO CRUD k sestavení systému CRUD s back-endem databáze MySQL.

Poznámka:Chcete-li získat přístup k CRUD en PHP a mySQL, klikněte zde .

Instalace a konfigurace

V této části uvidíme, jak nainstalovat a nakonfigurovat nástroj PDO CRUD, jakmile si jej zakoupíte a stáhnete z CodeCanyon.

Jakmile si jej zakoupíte, budete si moci stáhnout soubor zip. Rozbalte jej a najdete adresář s hlavním kódem pluginu:PDOCrud/script . Zkopírujte tento adresář do své aplikace PHP.

Pokud je například váš projekt nakonfigurován na adrese /web/demo-app/public_html , měli byste zkopírovat adresář skriptu do /web/demo-app/public_html/script .

Dále musíte zadat podrobnosti o back-endu databáze do konfiguračního souboru. Konfigurační soubor se nachází na adrese /web/demo-app/public_html/script/config/config.php . Otevřete tento soubor ve svém oblíbeném textovém editoru a změňte v něm následující podrobnosti.

$config["script_url"] ="https://moje-demo-aplikace";/************************ databáze * ***********************///Nastavit název hostitele pro připojení k databázi$config["hostname"] ="localhost";//Nastavit database name$config["database"] ="demo_app_db";//Nastavit uživatelské jméno pro přístup k databázi$config["username"] ="demo_app";//Nastavit pwd pro uživatele databáze $config["password"] ="demo_app";//Nastavit typ databáze, který se má použít$config["dbtype"] ="mysql"

Jak vidíte, podrobnosti jsou samozřejmé. $config["script_url"] je nastavena na adresu URL, kterou používáte pro přístup na svůj web.

Jakmile uložíte podrobnosti o databázi, jste připraveni používat nástroj PDO CRUD. V našem příkladu vytvoříme dvě tabulky MySQL, které obsahují data zaměstnanců a oddělení.

  • zaměstnanci :uchovává informace o zaměstnancích
  • oddělení :obsahuje informace o oddělení

Otevřete nástroj pro správu databází a spusťte následující příkazy k vytvoření tabulek, jak jsme právě probrali výše. Pro práci s back-endem databáze MySQL používám phpMyAdmin.

Nejprve vytvořte tabulku oddělení.

CREATE TABLE `department` ( `id` int(11) UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY, `department_name` varchar(255) NOT NULL DEFAULT '') ENGINE=MyISAM DEFAULT CHARSET=utf8;

Dále vytvoříme tabulku zaměstnanců.

CREATE TABLE `zaměstnanec` ( `id` int(12) UNSIGNED NOT NULL PRIMÁRNÍ KLÍČ AUTO_INCREMENT, `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 '', `telefon` varchar(255) NOT NULL DEFAULT '') ENGINE=MYISAM DEFAULT CHARSET=utf8;

Jak vidíte, použili jsme dept_id sloupec v tabulce zaměstnanců, který obsahuje ID odpovídajícího oddělení uloženého v tabulce oddělení.

Jakmile vytvoříte tabulky ve své databázi, jsme připraveni vytvořit aplikační rozhraní CRUD pomocí nástroje PDO CRUD!

Jak nastavit základní CRUD

V této části uvidíme, jak můžete nastavit základní rozhraní CRUD pomocí nástroje PDO CRUD napsáním pouze několika řádků kódu.

Stůl oddělení

Začneme tabulkou oddělení.

Pojďme vytvořit department.php s následujícím obsahem. Pokud je kořen vašeho dokumentu /web/demo-app/public_html/ , vytvořte oddělení.php soubor na /web/demo-app/public_html/department.php . Připomeňme, že jsme již zkopírovali adresář skriptu do /web/demo-app/public_html/script .

dbTable("department")->render();

A nyní, když nasměrujete prohlížeč na department.php soubor, měli byste vidět něco takového:

Fuj! S pouhými dvěma řádky kódu máte připravené uživatelské rozhraní CRUD, které vám umožní provádět všechny potřebné akce vytváření, čtení, aktualizace a mazání na vašem modelu. Nemluvě o tom, že výchozí zobrazení seznamu samo o sobě obsahuje spoustu funkcí, včetně:

  • hledat
  • vestavěné stránkování
  • tisk
  • exportujte záznamy do formátu CSV, PDF nebo Excel
  • operace hromadného mazání
  • řazení podle sloupců

Klikněte na Přidat tlačítko na pravé straně a otevře se formulář pro přidání záznamu oddělení.

Pojďme přidat několik záznamů pomocí Přidat a podívejte se, jak to vypadá.

Jak vidíte, jedná se o docela lehké a úhledné rozhraní. Téměř bez úsilí jsme vytvořili CRUD pro model oddělení! Dále se podíváme, jak totéž provést u tabulky zaměstnanců.

Tabulka zaměstnanců

V této části uvidíme, jak vytvořit CRUD pro tabulku zaměstnanců. Pojďme vytvořit employee.php s následujícím obsahem.

dbTable("employee")->render();

Je to v podstatě stejný kód jako minule; musíme jen změnit název tabulky. Pokud kliknete na Přidat také vám přináší pěkný formulář, který vám umožní přidat záznam zaměstnance.

Možná jste zaznamenali jeden problém:ID oddělení pole je textové pole, ale bylo by lepší jako rozbalovací seznam obsahující názvy oddělení. Podívejme se, jak toho dosáhnout.

getPDOModelObj()->select("oddělení");$options =array( );foreach($data as $record) { $options[$record['id']] =$record['department_name'];}// změňte typ pole dept_id z textového pole na výběr rozevíracího seznamu$pdocrud-> fieldTypes("dept_id", "select");$pdocrud->fieldDataBinding("dept_id", $options, "", "","array");echo $pdocrud->dbTable("employee")->render( );

V tomto kódu jsme přistupovali k tabulce oddělení prostřednictvím PDO CRUD, abychom mohli přiřadit název oddělení k ID oddělení. Poté jsme aktualizovali možnosti vazby pro pole ID oddělení, aby se vykreslilo jako rozevírací nabídka (select ) seznam.

Nyní klikněte na Přidat tlačítko, abyste viděli, jak to vypadá! Měli byste vidět ID oddělení pole je nyní převedeno na rozevírací nabídku!

Přidejme několik záznamů zaměstnanců a podívejme se, jak vypadá záznam zaměstnanců:

To vypadá pěkně! Ale máme tu další malý problém:můžete vidět, že ID oddělení sloupec zobrazuje ID oddělení a bylo by hezké místo toho zobrazit skutečný název oddělení. Pojďme zjistit, jak toho dosáhnout!

Pojďme revidovat kód employee.php s následujícím obsahem.

getPDOModelObj()->select( "department");$options =array();foreach($data as $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", "depart_name" , "e-mail","telefon"));$pdocrud->joinTable("oddělení", "employee.dept_id =department.id", "INNER JOIN");echo $pdocrud->dbTable("zaměstnanec")-> render();

Zde jsme vytvořili spojení mezi tabulkami zaměstnanců a oddělení pomocí $pdocrud->joinTable a poté řekl PDO CRUD, aby vykreslilo pouze jméno zaměstnance, název oddělení a kontaktní informace pomocí $pdocrud->crudTableCol .

A s touto změnou by měl výpis zaměstnanců vypadat takto:

Jak můžete vidět, skript PDO CRUD je velmi flexibilní a umožňuje vám všechny možné možnosti přizpůsobení uživatelského rozhraní.

Dosud jsme diskutovali o tom, jak nastavit základní rozhraní CRUD. V následující sekci uvidíme několik dalších možností, které můžete použít k vylepšení a přizpůsobení uživatelského rozhraní CRUD.

Možnosti přizpůsobení

V této části uvidíme několik možností přizpůsobení, které poskytuje nástroj PDO CRUD. Samozřejmě není možné projít všechny možnosti, protože nástroj PDO CRUD poskytuje mnohem více, než bychom mohli pokrýt v jediném článku, ale pokusím se zdůraznit několik důležitých.

Okamžitá úprava

Inline editace je jednou z nejdůležitějších funkcí, která vám umožňuje rychle upravit záznam na samotné stránce záznamu. Podívejme se, jak jej povolit pro stránku se seznamem oddělení.

Upravme oddělení.php skript, jak je znázorněno na následujícím úryvku.

setSettings("inlineEditbtn", true);echo $pdocrud->dbTable("oddělení")->render( );

Jak můžete vidět, právě jsme aktivovali inlineEditbtn nastavení a funkce inline editace je tu okamžitě!

Toto je skutečně užitečná funkce, která vám umožňuje upravovat záznamy za běhu!

Filtry

Jak jste si mohli všimnout, stránka se seznamem oddělení již poskytuje bezplatné textové vyhledávání pro filtrování záznamů. Možná však budete chtít přidat své vlastní filtry pro vylepšení funkce vyhledávání. Přesně to jsou Filtry Tato možnost vám umožňuje vytvářet vlastní filtry!

Použijeme employee.php pro tuto funkci, protože je to perfektní ukázkový případ použití. Na stránce se seznamem zaměstnanců zobrazujeme název oddělení pro každý záznam zaměstnance, pojďme tedy vytvořit filtr oddělení, který vám umožní filtrovat záznamy podle názvu oddělení.

Pokračujte a revidujte svůj employee.php jak je znázorněno v následujícím úryvku.

getPDOModelObj()->select("oddělení");$options =array();foreach( $data as $record) { $options[$record['id']] =$record['department_name'];}$pdocrud->fieldTypes("dept_id", "select");//rozbalovací nabídka změňte stav na výběr $pdocrud->fieldDataBinding("dept_id", $options, "", "","pole");//přidejte data pomocí pole v rozevíracím seznamu select$pdocrud->crudTableCol(array("first_name","last_name", " department_name", "email","phone"));$pdocrud->joinTable("oddělení", "employee.dept_id =department.id", "INNER JOIN");$pdocrud->addFilter("filtr_oddělení", " Department", "dept_id", "dropdown");$pdocrud->setFilterSource("filtr_oddělení", $options, "", "", "array");echo $pdocrud->dbTable("zaměstnanec")->render ();

Právě jsme přidali dva řádky s voláním addFilter a setFilterSource a s tím seznam zaměstnanců vypadá následovně:

není to skvělé? S pouhými dvěma řádky kódu jste přidali svůj vlastní filtr!

Nahrání obrázků

Tato funkce je nezbytná, pokud chcete nastavit nahrávání souborů ve formulářích. Pomocí jediného řádku kódu můžete převést běžné pole na pole pro nahrání souboru, jak ukazuje následující úryvek.

Předpokládám, že máte profile_image pole ve vaší tabulce zaměstnanců a že jste připraveni jej převést na pole pro nahrávání souborů!

fieldTypes("profile_image", "image");echo $pdocrud->dbTable("employee")-> render();

A je to! Uživatelé nyní budou moci nahrát obrázek do profile_image pole.

CAPTCHA

V dnešní době, pokud chcete zachránit svůj web před spamem, je ověření CAPTCHA nezbytnou funkcí. Nástroj PDO CRUD již nabízí několik možností, ze kterých si můžete vybrat.

Nabízí dvě možnosti:CAPTCHA a reCAPTCHA. Zvolíte-li možnost CAPTCHA, zobrazí se uživateli matematická hádanka, kterou musí vyřešit. Na druhou stranu, pokud vyberete možnost reCAPTCHA, zobrazí se slavnéNejsem robot hádanka!

Pokud chcete přidat jednoduchý CAPTCHA hlavolam, musíte před vykreslením CRUD přidat následující řádek.

$pdocrud->formAddCaptcha("captcha");

Na druhou stranu, pokud dáváte přednost reCAPTCHA, můžete toho dosáhnout pomocí následujícího úryvku.

$pdocrud->recaptcha("your-site-key","site-secret");

Stačí nahradit your-site-keysite-secret argumenty s platnými přihlašovacími údaji od společnosti Google.

Dosud jsme diskutovali o možnostech, které vylepšují funkčnost vaší aplikace. Dále uvidíme, jak byste mohli změnit vzhled a tím i vzhled a dojem z vaší aplikace.

Vzhledy

Pokud se vám nelíbí výchozí vzhled, máte na výběr z několika možností. Nástroj PDO CRUD poskytuje tmavé, světlé, zelené a pokročilé vzhledy jako další možnosti, ze kterých si můžete vybrat.

Například následující výpis je založen na zeleném motivu.

Vypadá to pěkně, že?

Pure Bootstrap

Ačkoli výchozí vzhled již podporuje responzivní rozvržení, nástroj PDO CRUD také podporuje integraci knihovny Bootstrap!

Pokud chcete vytvořit rozvržení pomocí knihovny Bootstrap, musíte použít následující fragment.

dbTable("department")->render(); 

A takhle to vypadá:

4 nejlepší předpřipravená rozhraní PHP CRUD z CodeCanyon

CodeCanyon je domovem desítek dobře zkontrolovaných a jednoduchých rozhraní CRUD PHP. Pokud nechcete procházet všechny PHP CRUD buildery na webu, podívejte se na těchto pět možností:

1. PHP CRUD generátor

S více než 20 motivy Bootstrap a skvělými pokročilými funkcemi toto předem připravené rozhraní vypadá skvěle a funguje dobře. Odvádí skvělou práci při provádění analýzy vašich dat. PHP CRUD Generator také přichází s nástroji, které vám umožní vytvořit ideální panel pro správu.

2. Víceúčelová aplikace Laravel

Potřebujete HTML5 CRUD aplikaci se všemi zvonky a píšťalkami? Pak je pro vás Laravel dobrou volbou. Tato snadná aplikace PHP CRUD je plná funkcí jako:

  • šablona front-end a back-end
  • e-mailové zprávy uživatelům a skupinám
  • funkce zapomenuté heslo
  • blokované a povolené adresy IP

3. Admin Lite – panel pro správu PHP a správa uživatelů

Pokud váš další projekt vytváříte pomocí CodeIgniter, budete chtít Admin Lite. Tato aplikace HTML5 CRUD vám pomůže udržet si přehled o vývoji webu pomocí modulů připravených k použití. Admin Lite přichází s administrátorským a uživatelským panelem a podporuje více jazyků. Svůj stávající panel můžete převést na tento, abyste mohli pokračovat tam, kde jste skončili.

4. Cicool – Page, Form, REST API a CRUD Generator

Tento seznam uzavíráme s Cicool. Je to jednoduchý CRUD PHP generátor se spoustou funkcí. Tento PHP builder WordPress CRUD lze také použít k vytváření stránek, formulářů a REST API. Použití Cicool vám umožní používat hotové komponenty a vstupy k vytvoření toho, co potřebujete. Díky neustálým aktualizacím budete vědět, že Cicool zůstává podporován.

Zjistěte více o světě kódu s Envato Tuts+

Není pochyb o tom, že kódování je hluboké téma. Je toho hodně co se naučit a je snadné se ztratit. Pokud si chcete osvojit velmi užitečné kódovací dovednosti s určitým návodem, podívejte se na Envato Tuts+. Naše výukové programy, průvodci a kurzy kódu vám nabízejí instrukce, které při učení potřebujete. Některé z nich si můžete prohlédnout níže:

  • ZDARMA PHPPHP Fundamentals Jeremy McPeak
  • PHPPHP celá čísla, plovoucí čísla a číselné řetězceMonty Shokeen
  • PHPJak nahrát soubor v PHP (s příkladem)Sajal Soni
  • WordPressJak používat ukládání do mezipaměti prohlížeče ve WordPressSajal Soni

A určitě zamiřte na náš kanál YouTube! Je plná videonávodů a kurzů, které vyučují naši odborní instruktoři.

Jak se stát webovým vývojářem
  1. CURRENT_TIMESTAMP v milisekundách

  2. Drag and Drop v MS Access a podmíněné třídění

  3. Přístup k tabulce jiného uživatele v rámci uložené procedury Oracle

  4. Refaktorujte cizí klíč na pole