Opsamling og repetition. Forelæsning 12 1) Opsamling og repetion - arrays - PHPs mysql-funktioner - SQL: SELECT, UPDATE, INSERT, DELETE - sikkerhed og validering 2) Kort præsentation af teknologier i PHP som kurset ikke har omfattet - Billedgenerering i PHP ´- PHPs XML-fortolker - PHP som objektorienteret scriptsprog - ODBC og andre datakilder end MySQL 3) gennemgang af opgavetyper i eksamensopgaven fra E2002.
Arrays Lister kan oprettes således: $arrPrenames[] =“Anna"; $arrPrenames[] ="Benny"; $arrPrenames[] ="Carsten"; $arrPrenames[] ="Dagny"; Eller $arrPrenames[10] ="Anna"; $arrPrenames[100] ="Benny"; $arrPrenames[1000] ="Carsten"; $arrPrenames[1001] ="Dagny"; Eller $arrPrenames = array(" Anna", "Benny", "Carsten", "Dagny")
Arrays Eller $arrPrenames["chef"] ="Anna"; $arrPrenames["projektleder"] ="Benny"; $arrPrenames["bogholder"] ="Carsten"; $arrPrenames["sælger"] ="Dagny"; Eller $arrPrenames = array( "chef"=> "Anna", "projektleder“ => "Benny", "bogholder" => "Carsten", "sælger" => "Dagny");
foreach-løkke Iterere gennem elementerne i et array du ikke kender størrelsen på: forach ($arrPrename As $strPrename){ echo ”Fornavnet er $strPrename ” }
Sætte variabel i betingelsen $strPreName = "Anna"; if($strName=$strPreName){ echo "Personen hedder $strName"; }else{ echo "Der er ikke noget navn i variablen"; } //List og each-funktioner kan derfor anvendes således sammen med f.eks et associativt array: while(list($strElementIndexValue,$strElementContent) = each($arrPrenames)){ echo "$strElementIndexValue hedder strElementContent"; }
Hvad kurset ikke indeholdt Billedgenerering i PHP PHPs XML-fortolker PHP som objektorienteret scriptsprog ODBC og andre datakilder Sikkerhed
Billedgenerering i PHP Ganske som syntaksen ved oprettelse af forbindelse til Database, filsystem eller XMLdokument returnerer ImageCreate en pointer: $image = ImageCreate(200,150); ImageDestroy($image)
Grafiske funktioner Farve - den første danner baggrundsfarve på canvas $grey = ImageColorAllocate($image,204,204,204); $red = ImageColorAllocate($image,204,0,0); Linie - tegner en linie fra (10,10) til (150,30) Imageline($image,10,10, 150,30, $red ) Cirkel ImageArc($image,x,y,width,height,start,end,color_id) Rectangel Image($image, x1, y1, x2, y2, color_id) Tekst ImageString($image,font, x, y, text,color_id)
Håndtering af billede Gemme til disk på webserver ImageJPEG($image, "sti/til/billedmappe/image.jpg", kvalitet); HTTP-Header Sætter en ny HTTP-header så browseren ved at materialet fra PHP-fortolkeren er et billede header("Content-type: image/jpeg"); HTML
PHPs XML-fortolker XML = Extended Markup Language XML standarder som metode til overførsel af standardiserede data. Se XML-Handler
PHP som objektorienteret scriptsprog Begreber: Class (klasse) Object (objekt) Instance (instans) Property (egenskab) Method (metode)
ODBC og andre datakilder Open Database Connectivity. Grænseflade udviklet af Microsoft så applikationer i MS-miljø kan tilgå fremmede datakilder med SQL.
Sikkerhed (fra: Programming PHP v/ Rasmus Lerdorf, Kevin Tatroe) Check every value supplied to your program to ensure that the data you're getting is the data you expected to get. Always initialize your variables. Set variables_order. Use $_REQUEST and friends. Whenever you construct a filename from a user-supplied component, check the components with basename( ) and realpath( ). Don't create a file and then change its permissions. Instead, set umask( ) so that the file is created with the correct permissions. Don't use user-supplied data with eval( ), preg_replace( ) with the /e option, or any of the system commands (exec( ), system( ), popen( ), passthru( ), and the backtick (``) operator). Store code libraries and data outside the document root.
Eksamen Gennemgang af eksamensopgave E2001
Tak for denne gang - - og held og lykke!