Web fejlesztés V. Illés Zoltán ELTE Informatikai Kar
Ami eddig volt… Web programozás jelentése Kliens-Szerver együttműködés(SSI,CGI) Interaktív HTML elemek Kliens programok –Javascript Szerver oldal –Schell script –PHP nyelvi elemek
File Input Output $file=fopen(filenév, mód); –Mód=r, w, r+, w+,a, a+ (append) fclose($file); $karakter=fgetc($file); $sor=fgets($file); $sor=fread($file,50); //bináris olvasás If (!fwrite($file,$sor)) …; // hiba fputs($file,$sor) az fwrite alias utasítása feof($file)file végén vagyunk-e
Adatbázis elérés Kapcsolat nyitás –$con=mysql_connect($host,$user,$pw); If (!$con) die(”Volt jobb!”); –$con=mssql_connect($host,$user,$pw); Lekérdezés –$e=mysql_query(”select * from foci”); $e eredmény tábla feldolgozása Kapcsolat zárás –mysql_close();
Süti beállítás time();// visszaadja 1970 óta az eltelt másodperceket A hívást a file elejére kell tenni! setcookie(”alma”,”jonatán”,time()+20*60); –Paraméterek: név, érték, lejárati idő –Csak az első paraméter megadása kötelező –20 percig él az alma bejegyzés –Van még 4 paramétere:path, domain, secure, httponly –Ha az idő elmarad, akkor ideiglenes a süti. (memória)
Süti olvasás $HTTP_COOKIE_VARS vagy $_COOKIE asszociatív tömbök Első kéréskor az állomány által beállított süti még nem látszik. If (isset($HTTP_COOKIE_VARS[„alma”]) {print(„Be van állítva az alma süti!”;} else {print(„Nincs beállítva!”);}
Header függvény Sütihez hasonlóan a file elején van. Header(„WWW-Authenticate: Basic”); Header(„HTTP/ Nincs ilyen”); Header(„Location: –Ennél egy exit is hasznos. –header("Location: ".$_SERVER['PHP_SELF']); Header(Cache-Control: no-cache, must-revalidate”); –Header(„Expires: Mon, 1 jul :00:00 GMT”); Header(„Content-type: image/gif”); –Header(‘Content-Disposition: attachment: filename=„„zoli.gif’); –Readfile(„zoli.gif”);//kiírja a file tartalmat
Hitelesítés, jelszó védelem Adott könyvtárra érvényes, ha.htaccess file létezik a könyvtárban (speciális forma) htpasswd, basic, kódolás nincs –/usr/freeware/apache/bin könyvtárban –Használat: htpasswd [-c] filenév usernév -cfilenév új állomány lesz Megkérdezi a jelszót, majd a névvel együtt a file-ba rakja kódolva a jelszót Példa: letolt könyvtár htdigest, MD5 kódolás –Használat: htdigest [-c] filenév azonosító usernév –IE nem bírja …, FireFox igen.
.htaccess tartalom AuthType Basic AuthName "Gyumolcsfa gyujtemeny" AuthUserFile /usr/people/illes/public_html/letolt/alma Require user alma Order deny,allow Deny from all Allow from elte.hu Satisfy any
Hitelesítés Először – normál login form – vagy header(WWW-Authenticate) küldés; –$_SERVER['PHP_AUTH_USER'] –$_SERVER['PHP_AUTH_PW'] –Pw.php.txt További oldalak ? –Session definiálás, session_start(); –PHPSESSID süti jön létre, php.ini szerint –$HTTP_SESSION_VARS['alma'] –Sess1.php, sess2.php
És még rengeteg könyvtári lehetőség include („konyvtar1.php”); –Egymásba ágyazhatók –HTML-t is beszúrhatunk (PHP-HTML szétválasztás) Include(„kezd.html”); Include(„befejez.html”); –include_once(„modul.php”) Levelezés függvények… –Példa: sulinet-rgazda.php Hálózati kapcsolatok… Stb. A oldalon!!!
Példák Irx.inf.elte.hu/ –Elso.php.txt –Letolt.php.txt –Masodfok.php –Pw.php.txt –Sess1.php.txt –Webprfeladatok.doc
Köszönöm a figyelmet! Illés Zoltán Budapest, Pázmány Péter sétány 1/c