PHP pre začiatočníkov - Databázy, 11.diel

PHP pre začiatočníkov - Databázy, 11.diel

V tejto časti sa presunieme ďaleko od základnej syntaxi a začneme využívať databázu MySQL pomocou ktorej sa naučíme tvoriť web rýchlo a prehľadne. Od tejto časti začína skutočná dynamika resp. využívanie php a databázy.
PHP je momentálne najviac spájané s SQL databázovým systémom MySQL. Ich vzájomná práca je nevyhnutná pre správu užívateľov, správu diskusných fór, zoznamov atď. Sú tu aj iné spôsoby ako to nahradiť a to napr. používať externé súbory pre prácu s dátami ale neodporúča sa to. MySQL je lepšie a rýchlejšie.

V článku sa dozviete základnú prácu s databázami. Základ by mal pozostávať už s pripojenia do databázy. Pripojenie do databázy zahájime pomocou jednoduchého skriptu.(mysql.php)

<?php

  define("SERVER","sem_zadajte_server");

  define("LOGIN","sem_zadajte_login");

  define("PASS","sem_zadajte_heslo");

  define("DATABASE","sem_zadajte_databázu");

  

  $dbc = mysql_connect(SERVER,LOGIN,PASS) or die('Pripojenie k serveru 
  zlyhalo!');

  mysql_select_db(DATABASE) or die('Nepodarilo sa označiť databázovú tabuľku!');

  ?>

Pre pripojenie budeme používať konštanty nie premenné, pretože ich hodnota zostáva len v jednom skripte a je nemožné ju zmeniť.  Premenné sú v tomto prípade menej bezpečné. Na pripojenie však využijeme premennú $dbc. Ako vidíte funkcia mysql_connect() nás pripojí do databázy. Jej tvar pripojenia bude vyzerať nasledovne mysql_connect("server","login","heslo"). Aby sme mohli využívať aj databázu a nie sa k nej len pripojiť využijeme funkciu mysql_select_db(). Jej tvar asi netreba vysvetľovať, pretože do zátvoriek udávame len jeden parameter a to databázu ktorú budeme využívať.

Určite vás teraz zaujíma ako vytvoriť databázu, ktorú bude server využívať. Na vytvorenie databázy budeme využívať funkciu mysql_query(). S touto funkciu sa nestretávate prvý krát ale budeme ju využívať ešte v mnohých skriptoch. Funkcia mysql_query() posiela príkaz do databázy, ktorý sa má vykonať. Skript na vytvorenie databázy by som odporúčal používať iba na localhoste, pretože inde nemusí fungovať. Asi sa často nestretnete so serverom kde bude tvorba databázy povolená. Preto používame klasicky nastavený localhost. Skript na vytvorenie databázy(mysql_cd.php).

<?php

  include_once("mysql.php");

mysql_query("CREATE DATABASE tabulky") or die("Nepodarilo sa vytvoriť 
databázu!");

  ?>

Po vykonaní skriptu sa zahrnie externý súbor na pripojenie do databázy (v súbore mysql.php nerátame mysql_select_db() to zapíšeme až po vytvorení databázy) a následne sa pošle príkaz na vytvorenie databázy. Ak by databázu nebolo možné vytvoriť tak by sa skript ukončil dôsledkom funkcie die(). Funkcia die() zastaví celý skript a  vykoná len príkaz, ktorý má vo svojich zátvorkách zapísaný ako parametre. Príčina neúspechu vytvorenia môže pozostávať s mnohých dôvodov a to môže byť napr. toto - databáza, ktorú chcete vytvoriť už existuje alebo server nepovoľuje tvorbu databázy pomocou skriptov. Ak chcete databázu vymazať stačí použiť namiesto príkazu CREATE príkaz DROP. Tento príkaz funguje pochopiteľne iba vtedy ak je už databáza vytvorená. V MySQL je jedno či používate syntax tatko - "CREATE DATABASE" alebo takto - "create database". Nič sa tým neovplyvní ale prehľadnejšie je to ako používate túto syntax veľkými písmenami.

Ak už máme vytvorenú databázu, tak je teraz možné vytvoriť aj nejakú tabuľku. Na vytvorenie tabuľky použijeme taktiež príkaz mysql_query(). Skript na vytvorenie tabuľky môže vyzerať nasledovne(mysql_ct.php):

<?php

  include_once("mysql.php");

mysql_query("CREATE TABLE tabulka(

id_tabulky MEDIUMINT UNSIGNED NOT NULL AUTO_INCREMENT ,

nick VARCHAR( 25 ) NOT NULL ,

email VARCHAR( 50 ) NOT NULL ,

PRIMARY KEY ( id_tabulky ) 

)") 

or die("Nepodarilo sa vytvoriť tabuľku!");

  ?>

Vytvorenie tabuľky je po úspešnosti skriptu dokončené. Ako vidíte teraz sme v databáze "tabulky" vytvorili tabuľku "tabulka". Stĺpec "id_tabulky" predstavuje jediné číslo, ktoré môže vlastniť záznam, ktorý bude v tabuľke vložený. Identifikovať ho musíme na spodku celého príkazu pomocou PRIMARY KEY(id_tabulky ). Je to niečo ako vaše rodné číslo. Máte ho len vy a nikto iný na svete. Do stĺpca "nick" a "email" budeme pomocou php zadávať informácie. Budú sa ukladať v týchto dvoch stĺpcoch pomocou formulára, ktorý ale budete vidieť až v nasledujúcej časti :-).

V nasledujúcej časti si ukážeme ako vložiť informácie do databázy. Berte časti tohto seriálu nie ako manuál pre "SQL jazyk" ale iba ako manuál pre využívanie "SQL jazyka" pomocou PHP.

Alternatívne verzie: Text PDF Voice
Autor: PaBi3 · Kategória: Programovanie · Dátum: 30.04.2005 20:34

Komentáre

#1 b0no E-mail
00.00.0000 00:00
mohol by si mi prosim ta napisat na tento mail ako si zrobil tuto diskusiu staci mi source dikes som tubesov kamos takze ti vopred dakujem

#2 admin Web E-mail
00.00.0000 00:00
admin Stačí cez fórum keď si už založil topic [laugh].

Už som písal, že je to napísané v PHP - využíva databázu MySQL a zdrojový kód nedostaneš lebo je to moje [wink].

Unikát čo nikde inde nenájdeš. Podobne ako ostatné systémy, ktoré si buď u niekoho zaplatíš aby ti to naprogramoval alebo si ho naprogramuješ sám. Je to bežná vec, tak neviem prečo by si mal dostať zdrojový kód. Nedám ti ho [tongue].

Osobné údaje
Captcha
Odpíšte text z obrázku. Rozlišujú sa malé a veľké písmená.
Obsah
Možnosti