Workshop PHP Een productencatalogus. Case Uitgever van software wil webpagina met productgegevens publiceren op basis van catalogus. Het gaat momenteel.

Slides:



Advertisements
Verwante presentaties
Databases via internet
Advertisements

Webpagina ’ s maken ITV 10 maart Onderwerpen Ontwerp en inhoud Navigatie HTML: de basis Webpagina’s in Word.
Workshop PHP Een productencatalogus Met database.
Hoofdstuk 16 en 19 PHP en MYSQL
Starten met PHP Dynamischer bouwen. PHP is een een scripttaal waarmee de server pagina’s in elkaar kunt laten zetten. Het verschil met HTML: Een php pagina.
PHP & MYSQL LES 02 PHP & FORMULIEREN. PHP & MYSQL 01 PHP BASICS 02 PHP & FORMULIEREN 03 PHP & DATABASES 04 CMS: BEST PRACTICE.
PHP & MYSQL LES 04 CMS: BEST PRACTICE. PHP & MYSQL 01 PHP BASICS 02 PHP & FORMULIEREN 03 PHP & DATABASES 04 CMS: BEST PRACTICE.
Starten met PHP Dynamischer bouwen.
Trillingen en Cirkelbewegingen
4/10/2017 Opleiding BINNENISOLATIE voor thermische renovatie Module 3 Train the trainer – 06/12/ Brugge.
Hoe deel je gesteenten in? Codering; Streckeisen
Havo 5: Stoffen en Materialen
Handboek Commercieel Budgetteren: toegepast J. Vanhaverbeke & L
Veevoeding Blok 3 en 4: Ruwvoerbalans melkveehouderij
Jeugd in het Strafrechtelijk kader Les 3, 2016 ‘Needs’
Klaar met het PW? Lees aandachtig het samenvattingenblad hst 7
Greenbuilding project
Aanleiding Veranderende organisatie
Portfolio Zon projecten.
Energielening.
De missie, het hart en het broodtrommeltje
Gaat u dan snel naar Goedkoop of in kleine oplagen kleding (laten) bedrukken, met een embleem, logo en/of tekst van uzelf, of.
Roundtable De Gefragmenteerde Organisatie
Welkom.
Mictieklachten bij mannen
BASISVEILIGHEID (VCA)
Quel jour sommes-nous aujourd’hui ?
Outdoor Advanced - Specialist Tuin en Openbaar Groen 3.1,
Jorismavo Examenvoorlichting
RECHT VAN SPREKEN FUNCTIONEREN OC’S 2016
Toolbox: ATEX ATmosphere - EXplosive
Groeiende kritiek op de katholieke Kerk rond 1500
De wederkomst ophanden? 20 augustus 2017 Urk.
Omdenken Een kleine test….
Hoofdstuk 3 In beweging.
Je kunt iedere dag iets betekenen voor een ander
Rd4-afvalconferentie november 2016
Nienke Hoffman Teamleider bovenbouw 28 maart 2017
Risico’s en de vertaling naar wettelijke uitgangspunten
Op zoek naar de juiste toon Geluid in de omgevingswet
Stedelijke bevolking 50% wereldwijd (70% verwacht) 75% in Europa
Hoofdstuk 5 Les 1: Markten.
6. Sleutelvoedingsfactoren
Hst. 2 Het geslachtsapparaat
Wees welkom op deze 1STE cursus windows SPECIAAL ONTWIKKELD VOOR AMBTENAREN Vergeet niet te rusten tijdens de cursus en neem een relaxe houding aan tijdens.
Microsoft® Office Outlook® 2007-cursus
Co-creatie in de Master Health Care & Social Work
Participatie in Onderzoek ZonMw
VPH Les 13.
Maurits Hendriks Technisch Directeur Chef de Mission
Kwaliteitsborging voor het Bouwen
Nieuw Nederlands Cursus Argumentatieve vaardigheden Opdracht 13
de tweede Bergrede Matteüs 24/25 - deel 6
de tweede Bergrede Matteüs 24/25 - deel 8
Basis Politie- & Honden Voertuigen
Belangrijkste wijzigingen
Wat is Prinsjesdag?
Jezus voor Pilatus Waar draait het om? Haat; onrecht
Het Evangelie naar JOHANNES studie januari 2017 Bodegraven.
Microsoft® Office SharePoint® Server 2007-training
H 3 Stabiliteits- en groeipact
De Mount Etna Presentatie voor Plannex door Veerle van Deelen.
De economie in de gouden eeuw
Automatische presentatie met muziek
Pastoraat van heling en vernieuwing
Kleurenschema’s Inspiratie: steden van de wereld.
Hoe zal de wereld eruit zien als er geen wiskunde bestond? Voorbeeld Hoe zal de wereld eruit zien als er geen wiskunde bestond? BIG QUESTION.
Voorproefje klezmer Brave Old World Khevrisa Klezmatics.
Paul Geurts, Gemeente Nijmegen
PHP arrays.
Transcript van de presentatie:

Workshop PHP Een productencatalogus

Case Uitgever van software wil webpagina met productgegevens publiceren op basis van catalogus. Het gaat momenteel om slechts 5 items Afbeelding, de naam, een beschrijving van het product, de prijs en het bestelnummer moeten worden getoond op één pagina. Zowel op de afbeelding, als op de productnaam moet kunnen worden doorgeklikt, waarna een nieuw scherm wordt geopend met detailgegevens over het item: productnaam afbeelding prijs highlights van het product systeemvereisten voor het product

Voorwaarden (1) Het ontwerp moet flexibel en dynamisch zijn. Dus als er een nieuw product bij komt, of er gaat één uit de catalogus, dan moet dat makkelijk aan te passen zijn. De pagina’s moeten in XHTML/PHP worden opgezet Aangezien het geringe aantal producten in catalogus (5), wordt er NIET gewerkt met een database. In plaats daarvan, worden de productgegevens middels arrays beschikbaar gesteld. De arrays met productgegevens moeten in een aparte include-file worden gedefinieerd (overzichtelijk en onderhoudbaar, met voldoende intern commentaar)

Voorwaarden (2) De unieke sleutel voor de producten is de EAN code De volgende indeling in arrays moet worden gevolgd: Array EAN, Naam Array EAN, Prijs Array EAN, Omschrijving Array EAN, systeemvereisten Array EAN, highlights

Op te leveren webpagina Catalogus.php, met een overzicht van alle vijf producten in lijstvorm webpagina Catalogusdetail.php, met de detailgegevens over een geselecteerd product include pagina Catalogus.inc.php, met de definitie en content van de diverse arrays include pagina Header.inc voor de header op elke pagina include pagina Footer.inc voor de footer op elke pagina

Schematisch ontwerp: catalogus.php

Schematisch ontwerp: catalogusdetail.php

Benodigde PHP kennis (1) Include() functie gebruiken Require() functie gebruiken Array_multisort() functie gebruiken Foreach() functie gebruiken File_exists() functie gebruiken Isset() functie gebruiken If() functie gebruiken Variabelen versturen/afhandelen met $_GET

Benodigde PHP kennis (2) Variabelen declareren en gebruiken Arrays declareren en gebruiken: Declareren Vullen Sorteren Doorlopen in een lus Benaderen op key

Uitleg: Code insluiten (include/require) (1) Bestand op de server wordt ingesloten in een ander bestand Templates voor opmaak (statisch, HTML, headers, footers)  include() Dynamische code in PHP pagina’s (bijvoorbeeld vaak te gebruiken functies, libraries)  require()

Uitleg: Code insluiten (include/require) (2) Include()/include_once()  xxx.inc Require()/require_once()  xxx.inc.php Voorbeeld: <?php // Server-side include voor de catalogus: require_once('catalogus.inc.php');

Uitleg: Arrays (geïndexeerd) Structuur waarin meerdere variabelen worden opgeslagen Naam en index (begint bij 0 (nul)!!) Voorbeeld: $maand = array(“jan”, “feb”, “mrt”, … “nov”, “dec”); Inhoud benaderen op index: $maand[4] of $maand[&teller]

Uitleg: Arrays (associatief) (1) Sleutel wordt zelf bepaald door string te gebruiken Voorbeeld: $producten = array( " " => "Studio Webdesign", " " => "Plantenencyclopedie 2004", " " => "PC Drukkerij 3 Suite", " " => "Creatief Fotolab", " " => "MovieJack DVD Pro" ); $product[ ] geeft dus “Studio Webdesign”

Uitleg: Arrays doorlopen Vaak wil je de hele array van boven tot onder doorlopen om met elk element iets te doen: Foreach($producten as $ean => $naam) { echo $naam; } Elke iteratie geeft de sleutel ($ean) en de waarde ($naam) van het huidige element

Uitleg: Arrays sorteren Arrays kun je sorteren met de functie array_multisort() Bijvoorbeeld: array_multisort($producten, SORT_ASC); Hier wordt de array $producten oplopend gesorteerd

Opdracht: maak catalogus.inc.php (1) Aanwijzingen: Je declareert alle te gebruiken arrays in dit script Alle 5 arrays zijn associatieve arrays, waarvan de key bestaat uit het EAN nummer Content van de producten vind je in document: ssen/s3a/productcatalogus%20opdracht%20PHP. doc ssen/s3a/productcatalogus%20opdracht%20PHP. doc De arrays $systeemvereisten en $highlights zijn meerdimensionaal!

Opdracht: maak catalogus.inc.php (2) Meerdimensionale arrays declareer je als volgt: $rooster = array( “maandag" => array( “ochtend" => “lokaal 105", “middag" => “lokaal 107" ), “dinsdag" => array( “ochtend" => “lokaal 107", “middag" => “lokaal 23" ) ); $rooster[‘dinsdag’][‘middag’] geeft bijvoorbeeld waarde “lokaal 23” Eerst wordt de juiste rij geselecteerd, dan de bijbehorende kolom

Opdracht: maak catalogus.php (1) Aanwijzingen: Open met een require(), waarin je de code van catalogus.inc.php opneemt in je script Sorteer vervolgens de array $producten oplopend Doorloop dan de array $producten van begin tot eind mbv foreach()

Opdracht: maak catalogus.php (2) Elke iteratie binnen deze lus moet het volgende doen: Controleren op bestand xxxx.gif (waarbij xxxx het EAN nummer is; dit is beschikbaar in je key variabele in de foreach() functie!) Als bestaat: afbeelding weergeven op scherm en link van maken Productnaam op scherm weergeven (ook link van maken) Omschrijving en prijs op scherm weergeven Zorg voor juiste indeling en HTML opmaak; maak ook gebruik van header.inc en footer.inc