Programmering B PHP Lektion 1 Mahmud Al Hakim Folkuniversitetet [email protected] Agenda Introduktion till kursen Kompilerande VS Interpreterande Språk Kompilering och Länkning Lite om Serverprogrammering Webbläsare och Webbserver Introduktion till PHP Att läsa: sid. 1-11 Copyright, www.dynamicos.se, Mahmud Al Hakim, [email protected], 2011 Kurslitteratur Programmering i PHP Av: Marcus Rejås och Magnus Määttä http://www.rejas.se/fritis/programmeringab/ Copyright, www.dynamicos.se, Mahmud Al Hakim, [email protected], 2011 Bra Webbplatser PHP-skolan http://www.phpportalen.net/school.php W3Schools PHP Tutorial http://www.w3schools.com/php/ Copyright, www.dynamicos.se, Mahmud Al Hakim, [email protected], 2011 Programmeringsspråk Kompilerande språk tex. C, C++, C# Pascal, Java Interpreterande språk (Skriptspråk) tex. JavaScript, PHP, Python. ASP, Perl Tips: http://sv.wikipedia.org/wiki/Programspråk Copyright, www.dynamicos.se, Mahmud Al Hakim, [email protected], 2011 Kompilering Alla program skrivs i någon form av källkod. Denna källkod måste sedan översättas till något som en dator kan förstå. Datorn förstår bara 1 och 0, på eller av. Detta kallas kompilering och kan göras vid olika tillfällen. Copyright, www.dynamicos.se, Mahmud Al Hakim, [email protected], 2011 Kompileringsprocessen 1 2 3 4 • Förbehandling av källkoden (preprocessing) • Kompilering • Assemblering • Laddning och länkning Copyright, www.dynamicos.se, Mahmud Al Hakim, [email protected], 2011 Interpreterande språk (Skriptspråk) Klient Skriptspråk Server Skriptspråk tex. JavaScript och VBScript tex. PHP och ASP Copyright, www.dynamicos.se, Mahmud Al Hakim, [email protected], 2011 Webbserver En webbserver har som uppgift att tillhandahålla webbsidor eller andra filer och skript som distribueras vanligtvis via Internet Kommunikation med en webbserver sker med hjälp av en webbläsare (klient). De vanligaste webbserverprogrammen är: ◦ Apache HTTP Server. ◦ Microsoft Internet Information Server (IIS) Copyright, www.dynamicos.se, Mahmud Al Hakim, [email protected], 2011 Webbserverprogrampaket Webbserverprogrampaket är ett paket av program som inkluderar de mest vanligaste program som krävs för att köra databas- och serverbaserade webbsidor, t.ex. Apache, MySQL, PHP och phpMyAdmin. Exempel på webbserverprogrampaket är: ◦ XAMPP (www.apachefriends.org/) ◦ WAMP (www.wampserver.com/en) ◦ MAMP (www.mamp.info) Copyright, www.dynamicos.se, Mahmud Al Hakim, [email protected], 2011 Ladda ner och installera XAMPP Gå till http://www.apachefriends.org/ Klicka på XAMPP XAMPP finns för många olika operativsystem. Välj t.ex. ”XAMPP for Windows” Ladda ner XAMPP Installera! Copyright, www.dynamicos.se, Mahmud Al Hakim, [email protected], 2011 XAMPP Kontrollpanel Starta Apache (webbserver) Copyright, www.dynamicos.se, Mahmud Al Hakim, [email protected], 2011 Webbserverns root Klicka på Explore… Och sedan htdocs för att komma till webbservern root Copyright, www.dynamicos.se, Mahmud Al Hakim, [email protected], 2011 Testköra webbservern genom att surfa till http://localhost/ Copyright, www.dynamicos.se, Mahmud Al Hakim, [email protected], 2011 Skapa en plats och sätt upp en lokal Testserver i Dreamweaver Copyright, www.dynamicos.se, Mahmud Al Hakim, [email protected], 2011 Introduktion till PHP PHP = PHP: Hypertext Preprocessor PHP är ett programmeringsspråk. PHP är ett skriptspråk som körs på webbservrar. PHP-dokument bearbetas av en webbserver. PHP-Kod interpreteras av webbservern och skickas vidare till webbläsaren. För att kunna öppna PHP-dokument behöver du publicera dessa till en webbserver med PHP-stöd. PHP är gratis och utvecklas genom ”Open Source”. 16 Copyright, www.dynamicos.se, Mahmud Al Hakim, [email protected], 2011 Lite historik 1995 : Rasmus Lerdorf skrev en samling skript som han kallade PHP/FI (Personal Home Page / Forms Interpreter). 1998: Andi Gutmans och Zeev Suraski hittade under sina universitetsstudier PHP/FI och skrev om det helt. De lanserade PHP 3.0. 2000: PHP4 med stöd för objektorienterad programmering. 2004: PHP5 med förbättrat stöd för objektorientering. Senaste uppdateringen är 5.3.3 (22:a juli 2010). Copyright, www.dynamicos.se, Mahmud Al Hakim, [email protected], 2011 Att skriva PHP Skript PHP kod placeras mellan <?php och ?> <?php Skriv PHP kod här! ?> PHP-dokument måste sparas med filändelsen .php t.ex. index.php, kontakt.php, epost.php OBS! PHP är Skiftlägeskänsligt (Case Sensitive) Copyright, www.dynamicos.se, Mahmud Al Hakim, [email protected], 2011 echo echo är ett PHP-Kommando som skickar data till klienten. Ex. <?php echo "Hello World"; ?> Copyright, www.dynamicos.se, Mahmud Al Hakim, [email protected], 2011 Övning: Min första PHP sida Spara som hej.php i webbserverns root Copyright, www.dynamicos.se, Mahmud Al Hakim, [email protected], 2011 Echo exempel <?php echo "Hello World"; echo "<br>"; echo "Text som sträcker sig över flera rader"; echo "Text 1", "Text 2"; ?> Copyright, www.dynamicos.se, Mahmud Al Hakim, [email protected], 2011 Vanliga fel – Nr 1 <body> echo "Hello World"; </body> Glömt <?php och ?> Copyright, www.dynamicos.se, Mahmud Al Hakim, [email protected], 2011 Vanliga fel – Nr 2 <body> <?php echo "Hello World"; </body> Glömt ?> Copyright, www.dynamicos.se, Mahmud Al Hakim, [email protected], 2011 Vanliga fel – Nr 3 <?php echo "Hello World"; ?> Har sparat filen som html och inte php Copyright, www.dynamicos.se, Mahmud Al Hakim, [email protected], 2011 Vanliga fel – Nr 4 <?php echo Hello World; ?> Glömt citattecken runt text Copyright, www.dynamicos.se, Mahmud Al Hakim, [email protected], 2011 Vanliga fel – Nr 5 <?php echo "Hello World" echo "<br>"; ?> Copyright, www.dynamicos.se, Mahmud Al Hakim, [email protected], 2011 Glömt semikolon Hämta data via $_GET <?php echo "Hej $_GET[namn]"; ?> Skriv t.ex. följande i URLen (Webbadressen) get.php?namn=Ditt namn Copyright, www.dynamicos.se, Mahmud Al Hakim, [email protected], 2011 Dynamisk titel <title><?php echo $_GET[titel]; ?></title> Skriv t.ex. följande i URLen (Webbadressen) index.php?titel=Startsida Copyright, www.dynamicos.se, Mahmud Al Hakim, [email protected], 2011 Inlämningsuppgift 1 Skapa ett PHP-Skript som hämtar ditt namn från URLen (webbadressen) och visar ett meddelande i en alert-ruta (JavaScript). Copyright, www.dynamicos.se, Mahmud Al Hakim, [email protected], 2011