webprogramozó tanfolyam
DESCRIPTION
Webprogramozó tanfolyam. PHP alapjai. Ismétlő feladat. Készítsünk egy html űrlapot (form) Egy felhasználó regsztrációja legyen: Felhasználói név, jelszó, jelszó mégegyszer Férfi vagy nő? Kér-e hírlevelet? Milyen nemzetiségű? /legördülő menü/ Milyen témák érdeklik? - PowerPoint PPT PresentationTRANSCRIPT
Webprogramozó tanfolyam
PHP alapjai
Ismétlő feladat
Készítsünk egy html űrlapot (form) Egy felhasználó regsztrációja legyen:
– Felhasználói név, jelszó, jelszó mégegyszer– Férfi vagy nő?– Kér-e hírlevelet?– Milyen nemzetiségű? /legördülő menü/– Milyen témák érdeklik?– Leírás (szövegterület, textarea)– E-mail címe– Elküldés, törlés gomb
A kötelező mezők mellé rakjunk piros * -ot Maga az űrlap legyen viszonlag szépen formázva.
PHP – PHP : Hypertext preprocessor
Mi is az a PHP?
A PHP a web programozásánál felmerülő problémák megoldására született.
Kb. a C és Perl nyelvek egyszerűsített keverékének tekinthető.
Elsősorban dinamikus weboldalak létrehozásánál használatos.
Beépített SQL adatbáziskönyvtárat kínál, és több más adatbázisfajtát támogat.
A Php működése
Server oldali kód Php interpreter (fordító)
– Rajz
Mi kell ahhoz hogy működjön?– <?php phpinfo(); ?>
Mivel fogunk foglalkozni?
Kommunikáció a serverrel:– $_GET tömb– $_POST tömb
Tömbök– array(), print_r()
Függvények– time(), mail()
Cookie ( sütik )– setcookie(), $_COOKIE tömb
Használata
Üdvözlő szöveg elhelyezése– Példa
Továbbfejlesztve– Példa 2
I. Feladat
Regisztrációs „rendszer” továbbfejlesztése Html:
– Ezzel már megvagyunk (előző óra)
Php (az eddigiek alapján):– Jelszó és jelszó mégegyszer ellenőrzése (különben hiba)– A kötelező mezőket töltse ki (különben küldjük vissza)– Ne engedje hogy névnek ‘Admin’-t adjunk meg
Portál!
Ahhoz hogy együttműködjön a keretünkel, egy kis átalakítás kell.
El kell távolítani:– <html>,<head>,<body> tag-eket
A keretbe pedig be kell ágyazni:– include(), include_once()– require(), require_once()
Menü
Elkészítjük a portálunk menüjét (legalábbis az első változatot).
Külön file-ba szintúgy mint a regisztrációt.
Konstrukciók
Értékadás– $a = ‘Hello’;
Elágazás– If ($a == ‘mas’)
{print „valami”;
} Ciklus
– For ($i=0; $i<5; $i++){ print $i;}
– While ($i<5){ print $i; $i=$i+1;}
Galéria
Egy egyszerű megoldás:– Példa
Egy kicsit szebb (meg talán használhatóbb):– Példa 2
II. Feladat
Fejlesszük tovább a galériát! A kis képekre kattintva jelenjen meg az
eredeti kép (segítség: link)! Megoldás
Egy általános megoldás
Itt bármi lehet a képek neve. Direktory megnyitása:
– $dir=Opendir();
Olvasás:– $file=Readdir($dir);
Példa
A probléma kiküszöbölése
A mappákat nem akarjuk kirakni ugyebár... Is_dir($file_azon)
– Megmondja nekünk hogy egy direktoryval van-e dolgunk.
Ez alapján javítsuk ki a galériát! Megoldás
Portál
Ezt is integráljuk a portálunkba! A menüben is tüntessük fel!
III. Feladat
Az előbb megismert módon készítsük el a menünket is!
Tehát a megtalált file-ok alapján építse fel magát.
Idő
A time() függvénnyel lekérdezhetjük az aktuális időt (persze ez a server szerinti idő lesz).
Ez valami mágikus számot ad nekünk válaszul, ez a timestamp (időbélyeg).– Ami nem más mint 1970 január 1. 00:00 óta eltelt
másodpercek száma.
IV. Feladat
Készítsünk egy egyszerű (de nem túl szép) órát!– Megoldás
Tipp
Ismerd a függvényket! És használd a www.php.net keresőjét! Akkor nem fogod ezt elkövetni:
– http://hu.php.net/manual/hu/function.time.php#80868
Elágazás, mégegyszer
if (<feltétel_1>) { <utasítások_1> } elseif (<feltétel_2>) { <utasítások_2> } . . elseif (<feltétel_n>) { <utasítások_n> } else { <utasítások_n+1> }
Példa
If (isset($_GET[‘oldal’])) { } Elseif (isset($_GET[‘picture’])) { } Else { }
Elágazás máshogy
switch (<változó>){case <érték_1>: <utasítás_1> break;...
case <érték_n>: <utasítás_n> break;default: <utasítás_n+1>}
Switch példa
Switch ($_GET[‘nem’]){
case ‘f’: Ferfi(); break;case ‘n’: No(); break;default: Hiba();
}
Ciklus mégegyszer
for (<kezdeti értékadás>; <kilépési feltétel>; <léptetés>)
{ <utasítások>}
Példa
For ($i=1;$i<9;$i++){
print ”<a href=‘./main.php?oldal=”.$i.”’ >”.$i.”. oldal</a>”;
}
While ciklus (elöltesztelő ciklus)
while (<bennmaradási feltétel>){ <utasítások>}
While példa
$i=1;While ($i<9){
print ”<a href=‘./main.php?oldal=”.$i.”’ >”.$i.”. oldal</a>”;
$i++;
}
Do..while (hátultesztelő ciklus)
do{ <utasítások>}while (<bennmaradási feltétel>);
Hátultesztelő példa
$i=1;do{
print ”<a href=‘./main.php?oldal=”.$i.”’ >”.$i.”. oldal</a>”;
$i++;
}while ($i<10);
Megjelenés, testreszabhatóság
Készítsünk legalább két CSS file-t az oldalhoz!
Készítsünk egy kis menüt ahol választhat közüllük a felhasználó!
Függvények
Ha már ennyit használtuk őket, talán írhatnák mi is néhányat. De hogy is?
function <függvény_név> (<paraméterek>){
<kód>return <érték>;
}
V. Feladat
Alakítsuk át az oldalainkat, használjuk függvényeket az egyszerűsítéshez!– Jelszó ellenőrzés– Űrlap feldolgozás
Egy jobb megoldás
Valahogyan tárolnunk kell a választás eredményét, a GET tömb nem az igazi...
Sütik! (cookie) setcookie(<név>,<érték>,<lejárati_idő>); $_COOKIE[<név>]=<érték>;
String kezelő függvények
strlen(<string>) -> a string hossza
is_string(<változó>) -> string-e a változó
substr(<string>,<honnan>,<milyen hosszan>) -> string egy darabja
substr(<string>,<honnan>) -> string a honnantól
strtoupper(<string>) -> csupa nagybetűssé alakítja
strtolower(<string>) -> csupa kisbetűssé alakítja
Tömbök
$<változó név>=array();
<tömb>[]=<érték>;
count(<tömb>) -> tömb elemszáma
end(<tömb>) -> a tömb utolsó eleme
print_r(<tömb>) -> kiírja a tömb tartalmát
in_array(<érték>,<tömb>) -> megkeresi az értéket a tömbben, vagy false
Levélküldés
Mail() függvénnyel lehetséges mail(<hová>,<téma>,<üzenet>,<további
paraméterek>) Az üzenet egy sora legfeljebb 70 karakter
lehet!– \n új sor– $uzenet=wordwrap($uzenet,70); //feldarabolja
megfelelő méretű sorokra
IV. Feladat
A regisztrációs űrlap küldje el a felhasználónak hogy milyen adatokkal regisztrált.
Megoldás
Házi feladat
Készítsünk levélküldő rendszert! Egy űrlap amiben megadható:
– Kinek küldünk– Mi az üzenet– Mi a levél témája– Kitől kapja az üzenetet
PHP kóddal pedig küldjük is ezt el a címzetthez, de előtt ellenőrizzük hogy megfelelően lett-e kitöltve az űrlap.
PHP típusai
Típus Példa Leírás Integer 5 Egész szám Double 3.14 Lebegőpontos szám String "Helló„ Karakterlánc Boolean True Logikai változó Array Tömb Object Objektum