Tutoriál PHP #7: Ako vytvoriť prístup www stránky k databáze MySQL pomocou objektovo orientovaného programovania

objektovo orientované programovanie

Základnou jednotkou v OOP je objekt, ktorý zodpovedá nejakému reálnemu objektu z bežného sveta, napr. človek. Každý objekt má svoje atribúty a metódy.

Atribúty objektu sú vlastnosti alebo dáta, ktoré objekt uchováva (napr. $meno, $priezvisko, $vek, a pod.)

Metódy objektu sú schopnosti, ktoré vie objekt vykonávať. Ak by sme mali objekt typu človek, tak jeho metódami by boli chodDoPrace(), pozdrav(), mrkniOcami() a pod.

Jazyk PHP nie je objektovo založený, je ale objektovo orientovaný. To znamená, že je možné v PHP vytvárať a používať objekty. Je to preto, lebo PHP vzniklo v čase, kedy nebolo OOP ešte rozšírené.

TRIEDY:
aby sme mohli vytvoriť objekt, musíme najprv vytvoriť triedu. Trieda je vzor, podľa ktorého sa objekty vytvárajú. Trieda definuje objektu vlastnosti a schopnosti.

Ak vytvoríme nejaký objekt podľa triedy, hovoríme mu inštancia
. Inštancia vyzerá ako trieda, podľa ktorej sa vytvorila. Líši sa len v dátach (atribútoch).

Samotné OOP vlastne pojem OBJEKT nepozná, rozlišuje len triedu a inštanciu.

Konštruktor je metóda, ktorá sa automatický spúšťa pri vytváraní inštancie na www stránke. Konštruktor nastavuje vnútorný stav objektu tak, aby bol pripravený k používaniu. Pokiaľ má trieda konštruktor, nie je možné vytvoriť inštanciu, iba použitím konštruktora. Konštruktor do triedy vkladáme za adtibúty a pred ostatné metódy.

Vytvoríme si objekt, ktorý po zavolaní pripojí webovú stránku k databáze MySQL. Budeme potrebovať dva súbory, index.php, čo je vlastne naša webová stránka a potom súbor spojMySQL.php, v ktorom vytvoríme triedu. Aby trieda správne pracovala, je potrebné definovať v našom prípade štyri vstupné údaje - atribúty, hosting, meno používateľa, prístupové heslo a názov databázy s ktorou chceme pracovať. Tieto údaje budú vstupnými atribútmi pre metódu našej triedy.

<?php

class spojMySQL {
	
	          //definovanie adribútov
			  public $host;
			  public $user;
			  public $pass;
			  public $menoDB;
			  
			  
	        // definovanie konštruktora
			
			public function __construct($host,$user,$pass,$menoDB)
			    {
					$this->host=$host;
					$this->user=$user;
					$this->pass=$pass;
					$this->menoDB=$menoDB;
				}


		  // definovanie metódy
		   public function pripojMySQL() 
		        {
					mysql_connect($this->host,$this->user,$this->pass)
					or die ("skonrolujte pripojenie k serveru MySQL");
					
					$nastavenie = mysql_select_db($this->menoDB)
                    or die ("uvedená databáza neexistuje");			
				}
}
?>

Na webovej stránke je potrebné vytvoriť spojenie web stránky s triedou spojMySQL.php, následne vytvoriť inštanciu, pomocou ktorej pristúpime k metóde, ktorá vytvorí spojenie s MySQL a zároveň nastaví pracovnú databázu (databáza s ktorou chceme pracovať - využívať ju). Pri vytváraní inštancie je potrebné zadať štyri parametre, ktoré sú zadefinované v našej triede ako atribúty. Nakoľko ide o reťazce, zadávame ich do úvodzoviek.

<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8">
<title>Spojenie s MySQL</title>
</head>
<body>
	<?php
    require_once("class/spojMySQL.php");
    $spojenie = new spojMySQL('localhost','vx296800','skola','vx296800db');
    $spojenie->pripojMySQL(); 
    ?>
</body>
</html>
Rubriky: