Filbehandling (Kapittel 8)

Slides:



Advertisements
Liknende presentasjoner
Trykk på mus eller tastatur for neste bilde…
Advertisements

Support, nye funksjoner og tjenester fra Uni Pluss
7.8.3 Elektronisk tilleggsmerking
Larvik Og Omegn MS Foreningen sin PC opplæring høsten 2005
Bygg web på Opplæring Presentasjon Idium AS Bygg web på Opplæring.
Antalis-HQ BRUKERVEILEDNING FOR BESTILLINGER. Antalis, Europas ledende distributør av papir, emballasjeløsninger og dekor & display produkter, presenterer.
Høgskolen i Oslo Webprogrammering Tilstandsbevaring Sessions og cookies.
GoOnline publisering Hvordan komme i gang med GoOnline. Denne presentasjonen tar deg steg for steg gjennom oppsett av nettsted med bruk av GoOnline Proffesional.
Brukerveiledning for gruppeledere
Datafiler og serialisering Tekstfiler Scanner-klassen Binær overføring av data Direkte tilgang til filinnholdet Serialisering LC191D Videregående programmering.
MX Data1 Opplæring i bruk av TM-GIS * • Oppretting av punkter Oppretting av punkter Oppretting av punkter • Oppretting av trasèer Oppretting av trasèer.
Webprogrammering (LO113A) 1 Kom i gang med PHP. Webprogrammering (LO113A) 2 Mål  Installere Apache og PHP  Konfigurasjon av Apache og PHP  Forstå samspillet.
HVA ER ?.
TIBE EDIT brukerveiledning Etter gjennomgang av denne presentasjonen skal du være i stand til å opprette nye sider, sette.
Halvdagskurs – Voss Energi •Argo Administrator •Enkel bildebehandling.
Vortex Ny rettighetsmodell og ny funksjonalitet. Rettigheter i dag •Les: Brukere eller grupper som kan lese ressursen •Skriv: Brukere eller grupper som.
Kontrollstrukturer (Kapittel 3)
BabelBank barnevern Avstemming i Agresso av personsensitive utbetalinger fra barnevernet/Familia Informasjon og opplæring mandag 16. desember 2013.
Versjon 16 Nye klienter. Fra 10 til 4 ALEPH modulsammenslåing.
Funksjon PLS program uavhengig IO Diagnose/Feilsøking
Objektorientert programmering i PHP del 2
1 E-Site 3.2 Webmaster introkurs. 2 Innhold •Generell informasjon om E-Site •Funksjoner •Adminsider.
Mål Excel Mål leksjon 1 Starte og avslutte Verktøylinje Oppgaverute Skjermbildet i Excel Hjelp.
Eiendomsregister - eksempel
Manual for skoleavis i 6. klasse
Generelt I/O if/else Funksjoner Lists Løkker Dictionaries Annet Listebehandling Klasser Python med noen algdat-anvendelser Åsmund Eldhuset asmunde *at*
Bruk av PHP. Nyttige funksjoner Tidsfunksjoner –Time(), date(), checkdate(), mktime() Tabellfunksjoner –Navigasjon current(), key(), next(), prev(), end(),
Programmering i Java versjon Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else Lervik.
1 Arrayer og form(ularer) (Kapittel 4). 2 Mål  Forstå assosiative og superglobale arrays  Kunne behandle webformularer (forms)  Kjenne forskjellen.
1 Organisering av kode (Kapittel 5). 2 Mål ● Forstå inkludering er og hvilken gevinst det gir ● Lære å utvikle egne funksjoner ● Forstå variablenes virkemåte.
Høgskolen i Oslo Webprogrammering Filbehandling i PHP.
Høgskolen i Oslo Web-programmering Feilhåndtering i PHP.
Høgskolen i Oslo Webprogrammering Ajax og PHP. I dag l Hvordan få en bedre brukeropplevelse via Ajax- script l Gjennomgang av kode l Oppgaveløsning på.
Publisering på verdensveven Kursdag 2 VÅFF, våren 2002.
Publisering på verdensveven Kursdag 1 VÅFF, våren 2002.
Skjema/Forms HTML II IT og læring 2/20 november 2001.
Høgskolen i Oslo Bli kjent med tekstbehandlingsverktøyet Word 2002 IT-seksjonen ved Avdeling for lærerutdanning 2003/2004 Grunnleggende tekstbehandling.
Andre funksjoner. Her kommer en beskrivelse av søkefunksjoner, knapper og annen funksjonalitet. 2.
Hvordan kan foreldre bruke de vangligste funksjonene i Itslearning.com
Grunnleggende tekstbehandling
Bli kjent med IKT. © Eduke as Basisferdigheter 1. Lese 2. Skrive 3. Regne 4. Muntlig fremstilling 5. IKT.
Studentliv - Kurs i PR og markedsføring - Modul 10 1 Arbeid på PC Fortrolighet i arbeidet med PC Skikk og bruk IT-kontrakten Spørsmål?
1 Forelesningsnotater SIF8039/ Grafisk databehandling Notater til forelesninger over: Kapittel 3: ”Input and Interaction” i: Edward Angel: ”Interactive.
Å lese tall fra en fil, klassen Scanner 1.Et Scanner-objekt kan knyttes til et strømobjekt eller til en streng. 2.Kan skanne teksten etter data av ulike.
BasWare PM bestillingssystem - selvstudiemateriell:
1 Java Database Connectivity (JDBC) Norvald H. Ryeng
Harald Kaasa Hammer: Manual til redigering av nettstedet Først forklares hva de ulike elementene på nettsidene betyr. Så ser vi på mappene.
Oppgave 4 – Heuristisk evaluering av Applecations Christian, Lavdim, Finn Christian & Vegard.
Hurtigreferanse for Lync 2013 for Office 365 © 2012 Microsoft Corporation. Med enerett. Med Lync kan du begynne å samarbeide uten å måtte planlegge et.
Bompasseringer Mål: Slå sammen data om bompasseringer fra mange bomselskap. Sende ut en samlefaktura til hver bileier.
H VOR ER FILENE MINE ? J OBBE EKSTERNT Seksjon for digital kompetanse Personalopplæring HiO 2010.
Komme i gang med OneDrive - skolevfk OneDrivePro/OneDrive for Business/OneDrive – skolevfk.
Kom i gang med Python Pål Hellesnes SYSTEMUTVIKLER
Oppdatert web-løsning Kongsberg o-lag
Brukstips! Tekstfeltene i denne filen er vanlige tekstbokser. Du kan endre skrifttype, størrelse, flytte dem rundt og kopiere dem hvis du vil. Jeg syns.
Slik setter du inn lysbildet i presentasjonen
Utgiftsrefusjoner Høgskolen i Østfold
Brukstips! Tekstfeltene i denne filen er vanlige tekstbokser. Du kan endre skrifttype, størrelse, flytte dem rundt og kopiere dem hvis du vil. Jeg syns.
Brukstips! Tekstfeltene i denne filen er vanlige tekstbokser. Du kan endre skrifttype, størrelse, flytte dem rundt og kopiere dem hvis du vil. Skrifttypene.
Brukstips! Tekstfeltene i denne filen er vanlige tekstbokser. Du kan endre skrifttype, størrelse, flytte dem rundt og kopiere dem hvis du vil. Skrifttypene.
Brukstips! Tekstfeltene i denne filen er vanlige tekstbokser. Du kan endre skrifttype, størrelse, flytte dem rundt og kopiere dem hvis du vil. Skrifttypene.
Arkivering på medlemsnett for klubber
Brukstips! Tekstfeltene i denne filen er vanlige tekstbokser. Du kan endre skrifttype, størrelse, flytte dem rundt og kopiere dem hvis du vil. Skrifttypene.
Brukstips! Tekstfeltene i denne filen er vanlige tekstbokser. Du kan endre skrifttype, størrelse, flytte dem rundt og kopiere dem hvis du vil. Skrifttypene.
Brukstips! Tekstfeltene i denne filen er vanlige tekstbokser. Du kan endre skrifttype, størrelse, flytte dem rundt og kopiere dem hvis du vil. Skrifttypene.
Brukstips! Tekstfeltene i denne filen er vanlige tekstbokser. Du kan endre skrifttype, størrelse, flytte dem rundt og kopiere dem hvis du vil. Skrifttypene.
Brukstips! Tekstfeltene i denne filen er vanlige tekstbokser. Du kan endre skrifttype, størrelse, flytte dem rundt og kopiere dem hvis du vil. Skrifttypene.
Brukstips! Tekstfeltene i denne filen er vanlige tekstbokser. Du kan endre skrifttype, størrelse, flytte dem rundt og kopiere dem hvis du vil. Skrifttypene.
Brukstips! Tekstfeltene i denne filen er vanlige tekstbokser. Du kan endre skrifttype, størrelse, flytte dem rundt og kopiere dem hvis du vil. Skrifttypene.
Brukstips! Det blå tekstfeltet i denne filen er en tekstboks. Du kan endre skrifttype, størrelse, flytte det rundt og kopiere hvis du vil. Du kan endre.
Utskrift av presentasjonen:

Filbehandling (Kapittel 8)

Mål Forstå hvordan filbehandling fungerer i PHP inkludert Lagre og hente ut informasjon på filer Gjøre filoperasjoner Laste opp filer via skjemaer Forstå sikkerhetsrisikoen ved filopplasting

Hva er filbehandling? Viktig del av webprogrammering Vanlige bruksområder Lagring av data Konfigurasjon Caching

Filbehandling i PHP omfatter Opprette nye filer Endre/lese innholdet i filer Finne filer Motta filer gjennom skjema Kopiere, flytte og slette filer og kataloger Endring av rettigheter Gjennkjenne filtyper

Normal behandlingsprosess Åpne filen Operere mot filen Lukke filen <?php $fp = fopen('fil.txt', 'r'); $linje = fread($fp, 4096); fclose($fp); ?>

Hva med feilhåndtering? <?php if($fp = fopen('fil.txt', 'r')) { $linje = fread($fp, 4096); fclose($fp); } else { echo “Klarte ikke åpne fila”; } // alternativt $fp = fopen('fil.txt', 'r') or die(“Klarte ikke åpne fila”); ?>

Viktige begreper Filreferansen Modus Filnavnet Filpekeren Vet hvilken fil den oppererer på Modus Filer åpnes i et modus basert på hvilke operasjoner du skal utføre Filnavnet Relative eller absolutte stier eller URL'er Filpekeren Indre peker i PHP som vet hvor i filen den skal operere

Ulike modus

Mye brukte funksjoner fopen() fread() fwrite() filesize() fclose() Åpner en fil og oppretter en filreferanse fread() Leser tegn inntil den treffer på linjeskift fwrite() Skriver til fil filesize() Returnerer antall bytes en fil består av fclose() Lukker filreferansen

Skrive data til en fil <?php $fp = fopen('fil.txt', 'w'); fwrite($fp, “Hello World!”); fclose($fp); ?>

Lese data fra en fil <?php $fp = fopen('fil.txt', 'r'); $innhold = fread($fp, 4096); fclose($fp); echo $innhold; ?>

Legge til data på slutten av en fil <?php $fp = fopen('fil.txt', 'a'); fwrite($fp, “Hello World!”); fclose($fp); ?>

Sjekk om filen er lesbar <?php $fil = 'fil.txt'; if(is_readable($fil)) { $fp = fopen($fil, 'r'); echo fgets($fp); fclose($fil); } else { echo “$fil er ikke lesbar\n”; } ?>

Et par nyttige snarveier file_get_contents($fil) Returnerer hele fila som en string file_put_contents($fil, $string) Lagrer en string til en fil file($fil) Leser hele filen og returnerer en matrise med et element for hver linje i fila readfile($fil) Skriver ut innhold av fila direkte

Sortering av linjer i en tekstfil <?php // Les inn alle linjer direkte til en matrise $linjer = file(“linjer.txt”); // Sorterer matrisen i stigende rekkefølge sort($linjer); // Skriv til fil $fp = fopen(“linjer_sortert.txt”, “w”); foreach($linjer as $linje) { fwrite($fp, $linje); } fclose($fp); ?>

Behandle en fil linje for linje <?php // En mer optimal måte å behandle // linje for linje av en fil med bruk av // et buffer vi overskriver for hver løkkerunde $fp = fopen('fil.txt', 'r'); while(!feof($fp)) { $buffer = fread($fp, 4096); // Behandle buffer echo $buffer; } fclose($fp); ?>

Visningsteller <?php // Les innhold fra teller filen $filnavn = 'teller.txt'; $fil = fopen($filnavn, 'r') or die(“Kunne ikke åpne $filnavn”); $teller = (int) fread($fil, filesize($fil)); fclose($fil); $teller++; // øk teller med 1 echo “Du er besøkende nummer $teller”; // Lagre oppdatert teller $fil = fopen($filnavn, 'w'); fwrite($fil, $teller); ?>

Kopiere, slette og flytte filer Kopiere fil copy($fra, $til) Slette fil unlink($fil) Flytte fil rename($fra, $til)

Skjema for opplasting <form method="post" enctype="multipart/form-data"> <input type="file" name="bilde" size="30"/> <input type="submit" name="submit" value="Last opp"/> </form> <?php // Flytt og vis bilde if(isset($_POST['submit'])) { $tmp_name = $_FILES['bilde']['tmp_name']; $name = $_FILES['bilde']['name']; move_uploaded_file($tmp_name, $name); echo "<img src=\"$name\"/>"; } ?>

Sikkerhet ved opplasting av filer Ikke tillat hva som helst! Tillater du opplasting av filer til webområdet uten restriksjoner kan brukere laste opp egne PHP script Gi eksplisitt tillatelse til filtyper

Sikrere skjema for opplasting av bilder <form method="post" enctype="multipart/form-data"> <input type="file" name="bilde" size="30"/> <input type="submit" name="submit" value="Last opp"/> </form> <?php // Flytt og vis bilde if(isset($_POST['submit'])) { $tmp_name = $_FILES['bilde']['tmp_name']; $name = $_FILES['bilde']['name']; $ext = strtolower(substr($name, -4, strlen($name))); if($ext == '.jpg') { move_uploaded_file($tmp_name, $name); echo "<img src=\"$name\"/>"; } else { echo "Ugyldig filtype"; } ?>