PHP programozás alapjai



Hasonló dokumentumok
PHP. Telepítése: Indítás/újraindítás/leállítás: Beállítások: A PHP nyelv

A C# programozási nyelv alapjai

PHP gyorstalpaló, avagy a Hello World-től az űrlapellenőrzésig

Szkriptnyelvek. 1. UNIX shell

PHP-MySQL. Adatbázisok gyakorlat

Operációs rendszerek. 11. gyakorlat. AWK - szintaxis, vezérlési szerkezetek UNIVERSITAS SCIENTIARUM SZEGEDIENSIS UNIVERSITY OF SZEGED

PHP. Adatbázisok gyakorlat

Programozási nyelvek Python

Adatbázis kezelés Delphiben. SQL lekérdezések

Tartalomjegyzék. I. rész Az elsõ lépések

BASH script programozás II. Vezérlési szerkezetek

1. Alapok. #!/bin/bash

Informatika terméktervezőknek

Apple Swift kurzus 3. gyakorlat

Dr. Pál László, Sapientia EMTE, Csíkszereda WEB PROGRAMOZÁS 6.ELŐADÁS. Fájlkezelés PHP-ben

AWK programozás, minták, vezérlési szerkezetek

Algoritmizálás és adatmodellezés tanítása 1. előadás

PHP alapjai, bevezetés. Vincze Dávid Miskolci Egyetem, IIT

AWK programozás, minták, vezérlési szerkezetek

Webprogramozás szakkör

Dr. Pál László, Sapientia EMTE, Csíkszereda WEB PROGRAMOZÁS 4.ELŐADÁS. Adatbázis alapú alkalmazások készítése PHP-ben

S z á m í t ó g é p e s a l a p i s m e r e t e k

WEBFEJLESZTÉS 2. ADATBÁZIS-KEZELÉS, OSZTÁLYOK

file./script.sh > Bourne-Again shell script text executable << tartalmat néz >>

A JavaScript főbb tulajdonságai

Adatbázisok. 8. gyakorlat. SQL: CREATE TABLE, aktualizálás (INSERT, UPDATE, DELETE), SELECT október október 26. Adatbázisok 1 / 17

Fogalmak: Adatbázis Tábla Adatbázis sorai: Adatbázis oszlopai azonosító mező, egyedi kulcs Lekérdezések Jelentés Adattípusok: Szöveg Feljegyzés Szám

Adattípusok, vezérlési szerkezetek. Informatika Szabó Adrienn szeptember 14.

SQL*Plus. Felhasználók: SYS: rendszergazda SCOTT: demonstrációs adatbázis, táblái: EMP (dolgozó), DEPT (osztály) "közönséges" felhasználók

Adatbáziskezelés php-ben MySQL adatbáziskezelı rendszert használva

Programozás alapjai. 5. előadás

II. Mérés SZÉCHENYI ISTVÁN EGYETEM GYŐR TÁVKÖZLÉSI TANSZÉK

Programozás alapjai gyakorlat. 4. gyakorlat Konstansok, tömbök, stringek

Tartalomjegyzék. Tartalomjegyzék 1. Az SQL nyelv 1 Az SQL DDL alapjai 2

Kilencedik témakör: Lazarus-Firebird. Készítette: Dr. Kotsis Domokos

Szkriptnyelvek II. Perl programok

Operációs rendszerek. 9. gyakorlat. BASH recap, reguláris kifejezések UNIVERSITAS SCIENTIARUM SZEGEDIENSIS UNIVERSITY OF SZEGED

Választó lekérdezés létrehozása

Algoritmizálás + kódolás C++ nyelven és Pascalban

Webtárhely létrehozása a helyen. Lépések Teendő 1. Böngészőbe beírni: 2. Jobb oldalon regisztrálni (tárhelyigénylés).

Occam 1. Készítette: Szabó Éva

Vezérlési szerkezetek

Adatbázis Rendszerek II. 1. SQL programozási felületek 39/1B IT MAN

Operációs rendszerek. 9. gyakorlat. Reguláris kifejezések - alapok, BASH UNIVERSITAS SCIENTIARUM SZEGEDIENSIS UNIVERSITY OF SZEGED

Internet programozása. 3. előadás

AWK programozás Bevezetés

Programozás alapjai C nyelv 4. gyakorlat. Mit tudunk már? Feltételes operátor (?:) Típus fogalma char, int, float, double

PHP MySQL, Java JDBC MySQL. Adatbázisok az iskolában 2012 Dr. Balázs Péter Palatinus Endre és Erdőhelyi Balázs diái alapján

A szürke háttérrel jelölt fejezet/alfejezet szövege a CD-mellékleten található. A CD-melléklet használata. 1. Elméleti áttekintés 1

ADATBÁZISOK gyakorlat: SQL 2. rész SELECT

Az SQL nyelv Structured Query Language (Struktúrált lekérdező nyelv)

Programozás C- és Matlab nyelven C programozás kurzus BMEKOKAM603 Előfeldolgozó rendszer Tömbök. Dr. Bécsi Tamás 4. Előadás

Kalmár György Adatbázis alapú rendszerek

ELTE SAP Excellence Center Oktatóanyag 1

Alapok. tisztán funkcionális nyelv, minden függvény (a konstansok is) nincsenek hagyományos változók, az első értékadás után nem módosíthatók

Adatbázis Rendszerek II. 5. PLSQL Csomagok 16/1B IT MAN

Mintavételes szabályozás mikrovezérlő segítségével

Adatbázisok II. rész

Az iskolai rendszerű képzésben az összefüggő szakmai gyakorlat időtartama. 10. évfolyam Adatbázis- és szoftverfejlesztés gyakorlat 50 óra

Mit tudunk már? Programozás alapjai C nyelv 4. gyakorlat. Legnagyobb elem keresése. Feltételes operátor (?:) Legnagyobb elem keresése (3)

Forráskód formázási szabályok

C programozási nyelv

Adabáziselérés ODBC-n keresztül utasításokkal C#-ban

Listák, szótárak, fájlok Listák, szótárak, fájlok

Változók. Mennyiség, érték (v. objektum) szimbolikus jelölése, jelentése Tulajdonságai (attribútumai):

A C programozási nyelv II. Utasítások. A függvény.

Lekérdezések az SQL SELECT utasítással

Egészítsük ki a Drupal-t. Drupal modul fejlesztés

C programozás. 1 óra Bevezetés

Mutatók és címek (ism.) Programozás alapjai C nyelv 8. gyakorlat. Indirekció (ism) Néhány dolog érthetőbb (ism.) Változók a memóriában

1. Egyszerű (primitív) típusok. 2. Referencia típusok

Operációs rendszerek gyak.

Járműfedélzeti rendszerek II. 1. előadás Dr. Bécsi Tamás

PYTHON. Avagy hosszú az út a BioPythonig

1. Jelölje meg az összes igaz állítást a következők közül!

10. ÓRA. Fájlok használata

Programozási nyelvek JAVA EA+GY 1. gyakolat

A relációs adatbáziskezelés szabványos nyelve Két fő csoportba sorolhatók az utasításai

Adatbázis, adatbázis-kezelő

Programozási nyelvek I. 5. előadás (Gregorics Tibor anyagának felhasználásával)

Bár a szoftverleltárt elsősorban magamnak készítettem, de ha már itt van, miért is ne használhatná más is.

1. Bevezetés szeptember 9. BME Fizika Intézet. Szám. szim. labor ea. Tőke Csaba. Tudnivalók. feladat. Tematika. Moodle Házi feladatok

Adatbázis használata PHP-ből

Programozás alapjai C nyelv 8. gyakorlat. Mutatók és címek (ism.) Indirekció (ism)

Adatbázis-lekérdezés. Az SQL nyelv. Makány György

Programozás II. 2. Dr. Iványi Péter

A függvény kód szekvenciáját kapcsos zárójelek közt definiáljuk, a { } -ek közti részt a Bash héj kód blokknak (code block) nevezi.

Természetesen készíts egy csempe nevű könyvtárat és ide mentsd az index.html állományt.

Javacript alapismeretek

N Y I L A T K O Z A T

Java II. I A Java programozási nyelv alapelemei

WEBFEJLESZTÉS 2. MUNKAMENET-KEZELÉS, HITELESÍTÉS

API tervezése mobil környezetbe. gyakorlat

Adatbázisok kezelése MySQL

Matlab alapok. Baran Ágnes. Baran Ágnes Matlab alapok Elágazások, függvények 1 / 15

Operációs Rendszerek II. labor. 2. alkalom

A legfontosabb DOS parancsok

Adatbáziskezelés alapjai. jegyzet

w w w. h a n s a g i i s k. h u 1

Átírás:

PHP programozás alapjai A PHP manapság az egyik leggyakrabban használt web programozási nyelv. Nyílt forrású, fejlesztő környezete is könnyen telepíthető, a legtöbb LINUX verzió is tartalmazza. Egyike a dinamikus alkalmazásfejlesztőknek, alkalmas nagyméretű portálok és SQL adatbázisok kezelésére, valamint kiválóan együttműködik a HTML kóddal. Készíthetők tisztán PHP kódok is, de szerintem igazán szép kivitelben a HTML alapú CSS - ben formázott (tehát ezek adják a keretet) PHP programok működnek. Nagy adatmennyiség esetén célszerű az adatokat SQL, MySQL adatbázisban tartani és azokat a PHP segítségével lekérni, feldolgozni. Az ingyenes tárhely szolgáltatók egy része biztosít PHP futási környezetet, némelyik pedig SQL adatbázist is biztosít. A továbbiakban először a PHP alap utasításaival foglalkozom, majd néhány példát mutatok meg. Kezdeti tudnivalók: Minden PHP program, vagy script a a kóddal kezdődik és a kóddal fejeződik be. Magyarázó szövegek a programban bárhol elhelyezhetők, ezek nem hajtódnak végre, csak a programkódban jelennek meg és a // jelzi őket. Minden utasítást pontosvessző zár le! Kiiratás módjai: print "ezt ird"; print $valtozo; (print helyett használható az echo is). HTML utasítás kiíratása, végrehajtása a PHP kódon belül, pl: print "<html><head>"; HTML utasítás idézőjele elé \ jel írandó, pl: print "<img src=\"ezt.jpg\" align=\"kép megjelenítés\">";. Műveleti operátorok: + - / * % (maradék). (összefűzés) Változó megadása és értékadás: $a=0; $string="valamilyen karakteres szöveg"; define("állandónév", érték); $a=$a+1; $a++ Mindkét utasítás az $a értékét eggyel növeli (más műveletekre hasonlóképp). $b=$b+5; $b+=5 Mindkét utasítás $b értékét növeli öttel. $veletlen=rand(); Véletlen szám generálása. abs($caltozo); A változó abszolút értékét adja vissza. Monitorra iratás: print $valtozo; Dinamikus adatkiirás, print "ird ki ezt"; Nem tárolt szöveg kiírása, print $a+$b; Művelet eredményét írja ki), print $a.$b; Két változó tartalmát fűzi össze (nem összead!) print $a."ft"; Változó tartalmához hozzáfűz egy szöveget. Változó típusa: integer (egész), double (tört), string (karakteres), boolean (logikai), object (objektum), array (tömb) Típus lekérdezése gettype($valtozo); 1. oldal

Típus módosítása settype($valtozo, "típus"); példáúl ismeretlen típust átalakítani, hogy fel lehessen dolgozni. Összehasonlító jelek: == egyenlő,!= nem egyenlő, === azonos (érték és típus is),!== nem azonos, >= nagyobb egyenlő, <= kisebb egyenlő, < kisebb, > nagyobb, vagy (or is jó), && és (and is jó),! tagadás, xor kizáró vagy. Dátum és idő kezelés: $ezt=time(); Pontos időt adja UNIX időbélyegként (másodpercben eltelt idő 1970.01.01. óta) date("y.m.d. H:i", $ezt); Dátum és idő kiírás módja mktime(óra, perc, mperc, hónap, nap, év); Átalakít egy beírt dátumot időbélyeggé. checkdate(honap, nap, év); Helyes-e a beírt dátum. Elágazások a programban: if (feltétel) {Ha a feltétel igaz, akkor az itt szereplő utasításokat hajtja végre;} else {Ha a feltétel nem igaz, akkor az itt szereplő utasítások futnak le. Ez az ág nem kötelező!;} Az if és else ágak közt lehet még közbülső feltétel is, ezt elseif (feltétel2) {utasítások;} formában illesszük a két ág közé. Többszörös elágazás is létrehozható, ahol a szelektor egy kifejezés, vagy változó. Az egyes ágakat a break utasítás zárja le! switch (szelektor) { case ertek1: Utasítások hajtódjanak végre, ha a kifejezés értéke megeggyezik érték1-gyel; break; case ertek2: Ha kifejezés értéke egyezik ertek2-vel akkor ez fusson; break; default: Ha egyik ág sem teljesül, akkor ez történjen; break; } Ciklusok a programban: A ciklusok ismétlődő utasítássorokat tartalmaznak. Mindig kell egy ciklus változó, vagy esemény, amely megszabja mikor érjen véget a ciklus, különben végtelen ciklust kapunk. Ciklus elhagyására szolgálhat a break; utasítás is (ekkor egy continue; utasítással ismétlést kezdhetünk, például a zéró osztás kiküszöbölése esetén). Amennyiben ciklusváltozónk van annak értéknövekedéséről is gondoskodni kell. Elöl tesztelő, ahol a zárójelezett utasítássor, csak a feltétel igaz volta esetén hajtódik végre: while (feltétel) {utasítások;} Hátul tesztelő, ahol az utasítássor egyszer mindenképp lefut, mivel a végén vizsgáljuk a feltétel igazságát: do {utasítások;} while (feltétel) Számlálós ciklus for (ciklusváltozó; feltétel; ciklusváltozó növelése) {utasítások;} például, ha azt szeretnénk, hogy egy utasítássor ötször fusson le: for ($i=0; $i!=5; $i++) {utasítások;} 2. oldal

Függvények létrehozása: Amikor egy utasítássort programunk során többször is használunk, célszerű azokat függvénybe szervezni. A függvényeket általában programunk elején helyezzük el, így a program futásakor bárhonnan hivatkozhatunk rájuk. Gyakori eset, hogy függvényeket külső állományban helyezünk el, így más programmodulokból is elérhetők (Ez akkor célszerű, ha több programmodulból áll össze a teljes működő rendszer, például egy főprogram és több alprogram esetén. A függvényeknek paraméterek adhatók át, tőlük paraméterek kaphatók vissza, ezáltal válik igazán rugalmassá a programozás. A kapott paramétereket a függvény törzsben feldolgozzuk, és vagy adunk vissza értéket, vagy nem (utóbbi esetben nincs return, csak végrehajtódik a függvény). Függvényen belül definiált változók kívülről nem láthatók, csak ha a global kulcsszóval külsővé tesszük. function fuggvénynév (kapott_papaméter1, kapott_paraméter2,...) { utasítás sorok; return ezt_adja_vissza;} Tömbök létrehozása, kezelése: Nagyobb rendezett adatmennyiség kezelésére, használatára alkalmazhatók a tömbök. Ezek több elemet tartalmazó adathalmazok, ahol egy -egy elemre tömbben elfoglalt sorszámával hivatkozhatunk. $tombneve=array(); Üres tömb létrehozása $tombneve=array("elem1", "elem2", "elem3",...); Tömb létrehozása elemfeltöltéssel. $tombneve[ ]="elem"; Elem hozzáadása tömbhöz. $tomb[count($tomb)-1]; Tömb utolsó elemének sorszám lekérdezése (egyet el kell venni, ugyanis az első elem sorszáma 0). $dbszam=count($tomb)-1; Tömb méretének lekérdezése. foreach ($tomb as $atmeneti) {print "$atmeneti";} Tömb végigjárása és elemeinek kiírása $ossz= array_merge($elso_tomb, $masodik_tomb); Két tömb összeadása (összevonás). $tomb=array_push($elso, 2, "ezt"); Több elem egyidejű hozzáadása tömbhöu. $elem=array_shift($tomb); Tömb első elemének eltávolítása. $ide=array_slice($tomb, 2, 3); Elem kinyerése tömbből, a 2 indexűtől 3 hosszan új tömbbe. sort($tomb); Tömb rendezése rsort($tomb); ABC növekvő sorba rendez asort($tomb); ABC csökkenő sorba rendez. unset($tomb[1]); A tömb 1 indexű elemének eltávolítása. Associatív tömbök: Ezek karakterlánccal indexelt tömbök, ahol az egyes elemekre a karakterlánccal hivatkozhatunk $assz_tomb=array ("mezo1"=>"ertek1", "mezo2"=>"ertek2", "mezo3"=>"ertek3"); Asszociatív tömb létrehozás és feltöltés. print $ass_tomb["mezo2"]; A mezo2 indexű elem értékének kiíratása. $ass_tomb["mezo1"]="ezt írja be"; Értékadás a mezo1 indexű elemnek. foreach($assz_tomb as $kulcs=>$ertek) {print "$kulcs=$ertek"; print "<br>"} Asszoc. tömb bejárása és kiiratása kulcs alapján, minden sor után soremelés. ksort($assz_tomb); Assz. tömb rendezése. Több dimenziós összetett tömbök $dim_tomb=array ( array ("mezo1"=>"ertek11", "mezo2"=>"ertek12", "mezo3"=>"ertek13"), array ("mezo1"=>"ertek21", "mezo2"=>"ertek22", "mezo3"=>"ertek23"), array ("mezo1"=>"ertek31", "mezo2"=>"ertek32", "mezo3"=>"ertek33") ); 3. oldal

Fájlok kezelése: include("../itt/ezt.php"); A megadott fájlt beágyazza a programba. file_exist("../itt/ez.txt"); Adott fájl létezésének ellenőrzése. is_dir("../itt/ez.txt"); A megadott karakterlánc lehet-e fájl? is_writeable("file.txt"); A fájl írható-e? is_readable("file.txt"); A fájl olvasható-e? is_executable("file"); A fájl futtatható-e? fileatime("file"); A fájl utolsó megnyitásának ideje (UNIX időbélyeg formában!). filemtime("fájl"); A fájl utolsó módosításának ideje (UNIX időbélyeg formában!). filesize("fájl"); A fájl mérete. touch("fájl.nev"); Fájl létrehozása unlink("fájl"); Fájl törlése (Ha a jogosultságok engedik!). $fajl=fopen("ut/fajl", mod); Fájl megnyitása függvénnyel, ahol a mod a megnyitás módját jelenti, tehát r olvasásra, w írásra (ha nem létezik létrejön, ha létezik felülíródik), a hozzáfűzésre. $sor=fgets("fájl", bájt_hosszan); Sor kiolvasása fájlból adott bájt hosszan a sorvégig, vagy a fájl vége jelig. $szov=fread($fajl, bajt); Tetszőleges bájt hosszú adat kiolvasása fájlból. $adat=fgetc($fajl); Egy karakter kiolvasása. fseek( $file, bájttol); A kiolvasást adott bájttól kezdi (pozicionál). flock($file, mod); Fájl zárolása, ha mod=1, akkor olvasható, de nem írhazó, ha 2, akkor mást kizár, ha 3, akkor zároltat felszabadít. fputs($file, $adat); $adat változó tartalmát hozzáírja a fájl végéhez (plusz egy \n sorvég jelet). feof($fajl); Megadja mikor érünk a fájl végére. fclose($fajl); Fájl zárása. Mappák kezelése: is_dir($map); Jelölhet-e mappát? mkdir("mappanév", jogok); Mappa létrehozása jogosultsággal (0 és egy 0-7 közé eső szám). rmdir("mappa"); Mappa törlése. $mappa=opendir("mappa"); Mappa megnyitása. $readdir($mappa); Mappa tartalmának olvasása a mappa végéig. Karakterláncok alakítása: printf("%20s\n", "adat"); 20 karakter szélesen írja ki, majd soremelés jön (állandó széles adatmező hozható létre). Ha a szám után s található akkor az adat karakteres, más esetekben d decimális szám, b egész szám binárisként, c egész szám ASCII megfelelője, f lebegőpontos szám (tört), o egész szám, x egész szám hexadecimális megfelelője. A mezőhossz előtt a kitöltő karakterre utasítunk, számoknál + jobbra, - balra igazít. printf("%**4d", "4"); eredménye ***4, printf("%.2f", 2.3333); eredménye 2.33, mert lebegőpontos számnál kerekíthetünk is, itt kéttizedesre. sprintf(); Eze csak átalakít és nem ír ki. print $proba[2]; Egy karakterlánc 2 indexű tagját adja, mintha az tömb lenne (tehát a harmadik karaktert). strlen($szoveg); Szöveg hossza strstr($szoveg, "ezt"); Szövegrész keresése. strpos($szoveg, "ezt"); Szövegrész helyének keresése. substr($szoveg, 3, 4); Szövegrész kinyerése, a 3 indextől (tehát negyedik karakter) 4 hosszan. 4. oldal

strtok($szoveg, "határoló"); Szövegrész kinyerése a határolóig (ciklusban futtatva a szöveg végéig keres). trim($szoveg); Szöveg elején és végén levágja az üres helyeket (tisztít). ltrim($szoveg); Csak a szöveg elejéről tisztít. strtoupper($szoveg); Nagybetűssé alakít. strtolower($szoveg); Kisbetűssé alakít. $tomb=explode(".", $kezdet); A. határolóig $kezdet szöveget tömbbé alakítja. Munkamenet változók: Amikor olyan változókat szeretnénk használni, melyeket több alprogramunk is azonosan használ (például felhasználó azonosítás, azonos szűrő adat lekérdezéseknél), akkor alkalmazhatók session_start(); A php program elején be kell írni ezt a függvényt, az első sorba a küldő és a fogadó oldalon (oldalak mindegyikén) is. Session_register("dirname"); Egy munkamenet változó bejegyzése (PHP 5-nél elhagyható). $_session['felirat']="scriptek:"; Egy munkamenet változónak értékadás. session_is_registered(változónév); A munkamenet be van-e jegyezve? session_destroy(); Munkamenet szüneteltetése. Környezeti változók: $HTTP_USER_AGENT Böngésző neve és verziója $HTTP_ADDC Kliens IP címe $HTTP_REFRER Annak az oldalnak a címe, ami ide linkelte a látogatót $PHP_SELF Épp futó progi elérési útja $HTTP_GET_VARS Asszociatív tömb, az összes GET kéréssel $HTTP_POST_VARS Asszociatív tömb, az összes POST kéréssel header("location: URL"); Egy adott URL-re küldi a böngészőt Kapcsolat MySQL adatbázissal: mysql_connect("host azonosító", "felhasználó név", "felhasználó jelszó"); Csatlakozás kiszolgálóhoz mysql_select_db("adatbázis név", kiszolgáló azonosító); Adatbázis kiválasztása, kiszolgáló alapértelmezése az épp megnyitott, így elhagyható! mysql_errno(); Hiba esetén a hibaüzenet kódját adja. mysql_error(); Hiba esetén a hibaüzenet szövegét adja angolul. mysql_query(sql_parancs, Kiszolgáló azonosító); SQL parancs futtatása, kiszolgáló alapértelmezése az épp megnyitott, így elhagyható! mysql_insert_id(); Az utolsó insert parancs során beállított automatikus növő mező értéke. msql_num_rows(eredményazonosító); Az azonosítóhoz tartozó táblában található sorok száma. msql_fetch_rows(eredményazonosító); Az azonosítóhoz tartozó táblában a következő sor kiolvasása Visszatérési értéke egy tömb, ami a sor összes mezőjét tartalmazza. msql_fetch_array(eredményazonosító); Itt asszociatív tömbként kapjuk vissza a sort, melynek indexei a mezőnevek! Igen hasznos függvény nagyobb adatbázisok esetén. msql_affected_rows(kiszolgáló); A legutóbb módosított sorok száma (kiszolgáló elhagyható). mysql_list_dbs(kiszolgáló); A kiszolgálón keresztül elérhető adatbázisok listája. mysql_tablename(azonosito, adatbázis_ sorszám); Adatbázisok nevei mysql_list_tables(dbnev, kiszolgáló); Egy adatbázis tábláinak nevei. mysql_num_fields(azonos); Lekérdezés után kapott eredménytábla mezőinek száma 5. oldal

mysql_close(azonosító); adatkapcsolat bontása Példa egy kapcsolat megnyitására: $adatbazis = "Adatbázis név"; $kapcsolat = mysql_connect("127.0.0.1", "root", "jelszavam"); if (!$kapcsolat) {die('nem lehet csatlakozni '. mysql_error());} mysql_select_db ( $adatbazis ) or die ( "Nem lehet megnyitni az $adatbazis állományt ".mysql_error() ); Példa adatbázis lekérdezésre: $lista = mysql_query("select * FROM szamtech ORDER BY eszktip, helysz, leltsz"); $rekordok=array(); while ( $fel=mysql_fetch_array($lista)) {$rekordok[]=$fel;} mysql_close($kapcsolat); Először kapcsolódunk az adatbázishoz, majd kiválasztjuk a kívánt rekordokat, végül a $rekordok asszociatív tömbbe feltöltjük azokat. Zárjuk a kapcsolatot és a tömbbe került rekordokkal már bármely PHP művelet elvégezhető. Példa adatbáziban adatfelvitelre: mysql_select_db ( $adatbazis ) or die ( "Nem lehet megnyitni az $adatbazis állományt".mysql_error() ); $felvisz= "INSERT INTO szamtech (gepnev, helysz, leltsz) VALUES ('$gepnev', '$helysz', '$leltsz') "; mysql_query($felvisz) or die ("Sajnos nem tudtam adatot felvinni a táblába! ".mysql_error() ); Példa adatbázisban egy rekord módosítására: mysql_select_db ( $adatbazis ) or die ( "Nem lehet megnyitni az $adatbazis állományt".mysql_error() ); $modosit="update szamtech SET gepnev='$gepnev', helysz='$helysz', leltsz='$leltsz', WHERE azon='$azon' "; mysql_query($modosit) or die ("Sajnos nem tudtam adatot módosítani a táblában! ".mysql_error() ); mysql_close($kapcsolat); PHP scriptek PHP utasítások beágyazása HTML oldalba: @session_start(); //Munkamenet indítás, ha szükséges Session_register("munkamenet"); //Munkamenet regisztráció, ha szükséges $cim="valtozo1"; $kit="valtozo2"; //Értékadás változóknak //Feltételes utasítás, ha van adatküldés ($_GET), akkor adatfogadás GET típusú űrlapról if ($_GET) {$cim=$_get["cim"];$kit=$_get["kit"];} <html> <head> <meta http-equiv="content-type" content="text/html; charset=iso-8859-2"> <meta http-equiv="content-language" content="hu"> 6. oldal

<meta HTTP-EQUIV="pragma" content="no-cache"> <meta name="robots" content="all"> <meta name="description" content="oldalcím" /> <meta name="keywords" content="kereső kifejezések" /> <title>fejrészben kiirandók</title> <script language="javascript" src="jscriptek.js"></script> <link rel="stylesheet" href="forma.css" type="text/css" media="screen" /> <link rel="stylesheet" href="print.css" type="text/css" media="print" /> </head> <body> <img width="780px" src="logo.jpg" border="0" alt="logo"> include "masoldal.txt"; // Másik állomány tartalmának beszúrása <h2>html utasítások</h2> <div class="doboz"> //Munkamenet változónak értékadás, majd alprogram hívás $_session['munkamenet']="adat"; include("alprogram.php"); </div> print "<br>"; //HTML utasítás megadható scripten belül is $File = "Fiokok/fiok.htm"; //Értékadás echo date("y.m.d. H:i", filemtime($file)); //Egy fájl utolsó módosítási idejének kiiratása echo-val </body></html> Egy a hívó által megnevezett fájl első 4 sorának kiiratása: A hívás történhet például <a href="index.php?cim=linkek&kit=htm" >Linkek</a> formában is. $cim="tukor"; // Ha nincs hívás, mi legyen a cím értéke $kit="htm"; // Ha nincs hívás, mi legyen a kiterjesztés értéke if ($_GET) {$cim=$_get["cim"]; $kit=$_get["kit"];} //Ha volt hívás értékadás $mit=$cim.".".$kit; //A cím és a kiterjesztés összevonása $file = fopen($mit, "r"); //fájl megnyitása olvasásra print fgets($file, 1024); //Egy 1024 bájt hosszú sor kiírása, például a cím for ($i=1; $i!= "4"; $i++) //Négyszer fusson le { print fgets($file, 1024); //Egy 1024 bájt hosszú sor kiírása } fclose($file); //Fájl bezárása Adat fogadás munkamenetből: 7. oldal

@session_start(); $dir=$_session["dirname"]; $felirat=$_session["felirat"];... 8. oldal