MySQL je velmi populární systém pro správu databází, který dokáže podporovat projekty všech velikostí. Jeho schopnost zpracovávat obrovské objemy dat, aniž by se zapotil, je jednou z jeho největších předností. Propojte MySQL s PHP kódem, můžete využít jednu ze tří metodologií.
V PHP existují tři typy metod pro připojení databáze MySQL přes backend:
- MySQL
- MySQLi
- CHOP
mysql() je nyní zastaralé kvůli bezpečnostním problémům, jako je SQL injection atd., ale další dva se aktivně používají.
MySQLi
MySQLi je rozhraní API používané jako funkce konektoru k propojení backendu aplikace PHP s databází MySQL. Funguje stejně jako předchozí verze, ale je bezpečnější a rychlejší a poskytuje lepší sadu funkcí a rozšíření. MySQLi bylo představeno s PHP 5.0.0 a ovladače byly nainstalovány v 5.3.0. API bylo navrženo tak, aby podporovalo MySQL od verze 4.1.13 po novější.
CHOP
Rozšíření PHP Data Objects (PDO) je databázová abstraktní vrstva. Je to jako rozhraní pro backend pro interakci s databází MySQL a provádění změn bez jakékoli změny v kódu PHP. Také vám dává svobodu pracovat s více databázemi. Hlavní výhodou používání PDO je, že váš kód zůstává jednoduchý a přenosný.
V tomto článku budu diskutovat o tom, jak připojit databázi MySQL na různé servery, a také vám poskytnu přehled připojení databáze pomocí PDO.
- Připojte MySQL pomocí serveru Localhost Server
- Připojte MySQL pomocí Cloudways Server
- Připojte MySQL pomocí PDO
- Připojte MySQL pomocí vzdálené MySQL
Stáhněte si Cheat Sheet MYSQL nyní
Do vaší doručené pošty vám zašleme odkaz ke stažení.
Děkuji
Vaše e-kniha je na cestě do vaší doručené pošty.
Vytvoření databáze MySQL na Localhost
Než začnete budovat připojení PHP k databázi MySQL, musíte vědět, co je PHPMyAdmin. Je to ovládací panel, ze kterého můžete spravovat databázi, kterou jste vytvořili. Otevřete prohlížeč a přejděte na localhost/PHPMyAdmin nebo klikněte na „Admin“ v uživatelském rozhraní XAMPP.
Když jste poprvé nainstalovali XAMPP, vytvořilo se pouze uživatelské jméno pro přístup, nyní k němu musíte přidat heslo sami. K tomu musíte přejít do Uživatelského účtu, kde je uživatel stejný jako ten, který je zobrazen na tomto obrázku:
Nyní klikněte na Upravit oprávnění a přejděte na Změnit heslo správce, zadejte své heslo a uložte jej. Toto heslo si zapamatujte, protože bude použito pro připojení k vaší databázi.
Poznámka:Pro přístup k databázím na localhost není nutné měnit heslo. Je to dobrá praxe, a proto jsme použili heslo.
Vytvořit databázi
Nyní se vraťte na domovskou stránku PHPMyAdmin. Klikněte na Nové pro vytvoření nové databáze.
V novém okně pojmenujte databázi podle svých potřeb, já ji pojmenuji „cvičení “. Nyní vyberte Collation jako utf8_general_ci, protože jej používáme pro účely učení a bude zpracovávat všechny naše dotazy a data, kterými se budeme zabývat v této sérii výukových programů. Nyní klikněte na Vytvořit a vaše databáze bude vytvořena.
Nově vytvořená databáze bude nyní prázdná, protože v ní nejsou žádné tabulky. Tomu se budu věnovat v nadcházející sérii, kde se naučíme vytvářet tabulky a vkládat do nich data. V tomto tutoriálu připojíme tuto databázi k localhost pomocí PHP
Vytvořte složku v htdocs
Nyní vyhledejte složku, do které jste nainstalovali XAMPP, a otevřete složku htdocs (obvykle c:/xampp). Vytvořte novou složku v c:/xampp/htdocs/ a pojmenujte ji „praxe“, do této složky umístíme webové soubory. Proč jsme vytvořili složku v htdocs? XAMPP používá složky v htdocs ke spouštění a spouštění vašich stránek PHP.
Poznámka:Pokud používáte WAMP, přidejte svou cvičnou složku do složky c:/wamp/www.
Vytvořte soubor pro připojení k databázi v PHP
Vytvořte nový soubor PHP a pojmenujte jej db_connnection.php a uložit to. Proč vytvářím samostatný soubor pro připojení k databázi? Protože pokud jste vytvořili více souborů, do kterých chcete vložit data nebo vybrat data z databází, nemusíte pokaždé psát kód pro připojení k databázi.
<?php function OpenCon() { $dbhost = "localhost"; $dbuser = "root"; $dbpass = "1234"; $db = "example"; $conn = new mysqli($dbhost, $dbuser, $dbpass,$db) or die("Connect failed: %s\n". $conn -> error); return $conn; } function CloseCon($conn) { $conn -> close(); } ?>
Zde je vysvětlení proměnné, kterou jsme použili v našem souboru db_connection:
- $dbhost bude hostitel, na kterém běží váš server, obvykle je to localhost.
- $dbuser bude uživatelské jméno, tj. root a $dbpass bude heslo, které je stejné, jaké jste použili pro přístup k vašemu PHPMyAdmin.
- $dbname bude název vaší databáze, kterou jsme vytvořili v tomto tutoriálu.
Stačí jej zahrnout pomocí vlastní funkce PHP include (zahrňte ‘connection.php’) v horní části kódu a zavolejte jeho funkci a použijte ji. Pomáhá také, když přesouváte umístění projektu z jednoho počítače na druhý a musíte změnit hodnoty v jednom souboru a všechny změny se automaticky použijí na všechny ostatní soubory.
Vytvořte nový soubor PHP pro kontrolu připojení k databázi
Vytvořte nový soubor PHP pro připojení k databázi. Pojmenujte jej index.php a přidejte tento kód do tohoto souboru.
<?php include 'db_connection.php'; $conn = OpenCon(); echo "Connected Successfully"; CloseCon($conn); ?>
Spusťte to!
Nyní otevřete prohlížeč a přejděte na localhost/practice/index.php a měli byste vidět tuto obrazovku:
Potvrzující zpráva
Gratulujeme! Úspěšně jste propojili svou databázi se svým localhostem! Pokud tuto obrazovku nevidíte, zkontrolujte, zda jste v souboru db_connection.php udělali vše správně.
Vytvoření databáze MySQL na serveru Cloudways
Pro účely tohoto tutoriálu předpokládám, že máte na webovém serveru nainstalovanou PHP aplikaci. Moje nastavení je:
- PHP 7.3
- MySQL
Rozhodl jsem se hostovat svou PHP aplikaci na spravovaných serverech Cloudways, protože mám vysoce optimalizovaný hostingový stack a žádné potíže se správou serveru. Cloudways si můžete zdarma vyzkoušet tak, že se přihlásíte k účtu a následuje tento jednoduchý GIF pro nastavení serveru a aplikace PHP. Podívejte se na hostingové plány Cloudways pro AWS, Google Compute Engine, Vultr, Linode a Digital Ocean, abyste našli to pravé pro vás.
Po úspěšném spuštění aplikace PHP na Cloudways přejděte na kartu aplikace a zkontrolujte podrobnosti o databázi a také klikněte na tlačítko pro spuštění správce databáze .
Připojte se k databázi MySQL
Chcete-li nastavit připojení k databázi, použijte mysql_connect funkce. Tato funkce vrací ukazatel (také známý jako popisovač databáze) na připojení k databázi. Tento popisovač bude později použit v kódu. Jakmile budete mít rukojeť, nezapomeňte přidat přihlašovací údaje k databázi.
- Vytvořte nový soubor PHP a pojmenujte jej db_connnection.php a uložit to.
Proč vytvářím samostatný soubor pro připojení k databázi? Protože pokud jste vytvořili více souborů, do kterých chcete vkládat data nebo vybírat data z databází, nemusíte pokaždé psát kód pro připojení k databázi. Stačí ji zahrnout pomocí vlastní funkce PHP include (include ‘connection.php’) na začátek kódu a zavolat její funkci a použít ji.
V tomto okamžiku máte možnost buď použít procedurální dotaz na připojení MySQLi nebo připojení k databázi založené na PHP PDO:
Procedurální dotaz MySQLi
<?php $servername = "localhost"; $username = "username"; $password = "password"; $db = "dbname"; // Create connection $conn = mysqli_connect($servername, $username, $password,$db); // Check connection if (!$conn) { die("Connection failed: " . mysqli_connect_error()); } echo "Connected successfully"; ?>
Propojení databáze MySQL s PHP pomocí PDO
<?php $servername = "localhost"; $username = "username"; $password = "password"; $db = "dbname"; try { $conn = new PDO("mysql:host=$servername;dbname=myDB", $username, $password, $db); // set the PDO error mode to exception $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); echo "Connected successfully"; } catch(PDOException $e) { echo "Connection failed: " . $e->getMessage(); } ?>
Zkontrolujte připojení
<?php include 'db_connection.php'; echo "Connected Successfully"; mysqli_close($conn); ?>
Pro PDO Zavřete připojení takhle
$conn = null;
Vzdálené MySQL
Pro vzdálené připojení PHP MySQL Přihlaste se do platformy Cloudways pomocí svých přihlašovacích údajů. Klikněte na „Servery“ v horní liště nabídek. Poté klikněte na cílový server ze seznamu.
- Dále přejděte na možnost nabídky Zabezpečení v levé nabídce a poté klikněte na kartu MySQL.
- Přidejte IP adresu do textové oblasti „Přidat IP do seznamu povolených“ a klikněte na tlačítko „Přidat“.
- Pokud máte více IP adres, opakujte proces.
- Až budete hotovi, kliknutím na tlačítko „Uložit změny“ dokončete změny
Po úspěšném nastavení IP Whitelisting nastavte IP adresu ve spojení a spusťte dotaz.
Nejlepší nástroje pro správu MySQL
MySQL Workbench
MySQL Workbench je vizuální nástroj pro návrháře databází, vývojáře a správce databází. MySQL Workbench poskytuje informační modelování, vylepšení SQL a komplexní organizační zařízení pro uspořádání serverů, organizaci klientů, posilování a mnoho dalšího. MySQL Workbench je přístupný na Windows, Linux a Mac OS X.
MySQL Workbench je velmi oblíbený správce databází MySQL pro vývojáře. Poskytuje užitečné nástroje pro správu, jako je konfigurace serveru, správa uživatelů a mnoho dalších. Je k dispozici pro operační systémy MAC OS, Linux a Windows.
Všem začínajícím vývojářům, kteří se chtějí naučit administraci databáze, doporučujeme, aby ji využili ve svůj prospěch. Funkce správy jim pomohou v plném zvládnutí administrace databáze.
Klady
- Ukládá příkazy SQL
- Poskytuje offline přístup ke vzdáleným databázím
- Ukládá více připojení na jednom místě
- K dispozici je vizuální schéma a nástroj pro tvorbu dotazů
Nevýhody
- Je to složitější ve srovnání s PHPMyAdmin.
- Uživatelé často hlásí selhání softwaru.
Navicat pro MySQL
Navicat je řada pro správu grafických databází a vývoj softwaru. Mohla by to být jediná aplikace, která vám umožní přidružit se k připojení PHP MySQL a databázím MariaDB současně. Konzistentní s cloudovými databázemi jako Amazon RDS, Amazon Aurora, Oracle Cloud, Google Cloud a Microsoft Azure.
Navicat pro MySQL poskytuje všechny pokročilé nástroje, které vývojář potřebuje k plné správě svých databázových operací. Díky kompatibilitě s cloudovými databázemi se hodí při správě cloudových aplikací. Některé z jeho hlavních funkcí jsou:
Výhody:
- Intuitivní a snadno použitelné uživatelské rozhraní.
- Poskytuje snadné připojení k databázi MySQL přes SSH terminál.
- Plánování databázových úloh – zálohování, obnova, spouštění sestav a další.
- Importujte a exportujte data z ODBC, Excel, Access, DBF, TXT, CSV, XML, JSON.
- K dispozici jsou nástroje pro tvorbu vizuálních schémat a dotazů.
- Kompatibilní s operačními systémy Windows, Linux a MAC.
- K dispozici funkce týmové spolupráce
Nevýhody:
- Profesionální verze je drahá
- Spuštění v systému Linux vyžaduje Wine, což zpomaluje IDE.
- Časově náročné řízení procesů
MySQL Yog
Tento nástroj pro správu MySQL má k dispozici tři balíčky, tj. Professional, Enterprise a Pro. Po otestování si můžete vybrat kteroukoli z nich.
Správci MySQL mohou s touto platformou snadno pracovat a efektivně zvládat své databázové úlohy. Je k dispozici pouze pro operační systémy Windows.
PROS
- K dispozici je nástroj pro návrh plynulých dotazů
- Nabízí pokročilé funkce, které pomáhají při výuce správy databáze.
CONS
- Verze Pro je těžká do kapsy
- Uživatelé často hlásí občasné selhání softwaru
- Nepodporuje žádné databáze kromě MySQL
- Žádná nativní podpora pro operační systémy Linux a MAC.
- Žádná podpora přetahování mezi více kartami.
Cloudways MySQL Database Manager
Správce databáze Cloudways MySQL je zdaleka jedním z nejšikovnějších a nejužitečnějších nástrojů pro správu MySQL pro vývojáře. Jeho použití je velmi snadné díky jeho uživatelsky přívětivému uživatelskému rozhraní a poskytuje všechny požadované nástroje pro správu MySQL, které by správce databáze měl mít:
Výhody:
- Nabízí uživatelsky přívětivé a přizpůsobitelné uživatelské rozhraní s pokročilými funkcemi.
- Vizuálně navrhuje tabulky schémat, omezení a dotazy.
- Snadné připojení k databázi MySQL pomocí terminálu SSH.
Nevýhody
- Pro více karet není k dispozici podpora přetažení.
- Nedostatečná podpora pro jiné databáze než MariaDB, MySQL.
O:Jak zkontroluji, zda MySQL běží nebo ne?
Odpověď:Chcete-li zkontrolovat, zda běží MySQL, za předpokladu, že je nainstalována jako služba, můžete přejít na Start -> Ovládací panely -> Nástroje pro správu -> Služby a vyhledat MySQL v tomto seznamu. Zkontrolujte, zda běží nebo ne.
Otázka:Jak najdu svůj port localhost pro MySQL?
A:Pokud používáte MySQL Workbench, podívejte se na záložku Session v informačním panelu na bočním panelu. Pokud používáte phpMyAdmin, klikněte na Home a poté na Proměnné v horním menu. Hledejte nastavení portu na stránce. Nastavená hodnota je číslo vašeho portu MySQL.
O:Jaké je moje uživatelské jméno a heslo pro MySQL localhost?
Odpověď:Podívejte se na http://php.net/manual/en/function.mysql-connect.php. $servername =“localhost”; $username =“root”; $heslo =""; To by pravděpodobně fungovalo pro nové uživatele a nezapomeňte vytvořit databázi před připojením k ní.
O:Jaká je standardní funkce PHP pro připojení k databázi MySQL?
Odpověď:Jedním z důvodů, proč PHP tak dobře spolupracuje s MySQL, je funkce mysql_connect, která otevírá připojení k databázi. Tato funkce má pět argumentů.
Závěr
Dobrá struktura databáze je páteří každé aplikace. Ať už jde o CMS nebo online platformu pro sledování úloh, potřebujete databázi MySQL, abyste mohli sledovat informace o aplikacích a uživatelích a data serveru pro procesy aplikace.
V tomto tutoriálu jsme se naučili dvě věci:
- Jak vytvořit novou databázi
- Jak propojit databázi MySQL s PHP
MySQLi i PDO mají své preference. Než však začnete, měli byste mít na paměti, že MySQL se používá pouze k propojení MySQL s PHP, pokud potřebujete migrovat do jiné databáze, budete muset upravit celý kód. Na druhou stranu PDO pracuje s 12 různorodými databázemi, díky čemuž je migrace mnohem méně náročná.