Dreamweaver MX - Övning 48a

Övningen kräver att man har möjlighet att använda PHP och MySQL
(Om server, databas mm inte stämmer med dina uppgifter så byter/ändar du på det som behövs)

  1. Troligen har du redan gjort en del grundövningar tidigare dvs övning 48:1,2,3 och då har du kanske redan hämtat filen kap48.zip nedan. Kanske har du bara hämtat fil grund.zip innan. I sådana fall måste du nu komplettera genom att hämta filen nedan som innehåller hela mappen kap48.


    Den här övningen är fristående från grundövnigarna. Tänk på att om du lägger in filerna från den zippade filen nedan i en tidigare mapp kap48 som du har arbetat med tidigare i grundövningarna som också innehåller mappen grund med grundövningarna så kanske du tar bort de ändringar du har gjort i mappen grund när du lägger in den nya mappen. Du kan i sådana fall välja att inte byta ut dina gamla filer mot de nya.

  2. Skapa en mapp php på på enheten H (eller C om du har din egen dator och inte är kopplad till ett nätverk).

  3. Hämta en zippad fil med filer som du skall använda. Filen ligger i en mapp på webbadressen:
    http://www.edu.jonkoping.se/it/ped/gy/uppsok/kap48/kap48.zip

    Zippa upp filen och lägg mappen kap48 i mappen php.

  4. Gå till webbadressen http://193.183.192.8/phpMyAdmin/. Logga in med ditt login och ditt lösenord. Välj nu svenska som språk. Därefter skall du importera en tabell till din databas. Klicka därför på din databas ( dvs db_anvxxx där anvxxx är utbytt mot din databas. Notera vad din databas har för namn.) så att du kan se information om databasen. Under texten Kör SQL-fråga/frågor i din databas db_anvxxx finner du texten Eller Textfilens plats : Bläddra där fram till filen skolpersonal1.sql i mappen data i mappen kap48 som du nyss hämtade. Klicka sedan på Kör. Nu importeras en strukturen för en tabell vid namn skolpersonal1.

  5. Du har emellertid ännu inget innehåll i din tabell. Klicka därför längst upp till vänster på tabellen skolpersonal1 så att du får fram informationen om tabellen. Gå nu ner lite på sidan och klicka på länken "Importera textfil till tabellen". Bläddra sedan fram filen personal1.skv som också finns i mappen data. Den är en semikolon separerad fil så du behöver inte ändra på några inställningar. Klicka på Kör. Därefter klickar du på Visa så att du kan se att du har fått ett innehåll.

  6. Kort information: Med hjälp av programmet phpMyAdmin så kan man exporera från en databas till en fil. När man exporterar till en sql-fil så får man alltid med strukturen till tabellen men man kan också välja så att också data dvs innehållet i tabellen ingår i filen. Man kan också exportera till en csv-fil som man sedan kan öppna i Excel. Om man från Excel vill importera till en databas så sparar man först filen som en skv-fil. En sql-fil som innehåller bara struktur eller struktur och data för en tabell kan man importera i en annan databas.

  7. Starta Dreamweaver MX och skapa sedan en ny plats (en lokal webbplats). Välj fliken Avancerat. Huvudmappen för platsen ska vara mappen php. Välj PHP som namn för platsen. Fyll i som webbadress http://193.183.192.8/user/anvxxx/ där anvxxx byts ut mot ditt login som du har fått av din lärare.

  8. Fyll också i dina Fjärrinformationsuppgifter. Välj Åtkomst: FTP och FTP-värd: 193.183.192.8. Som värdkatalog anger du ingenting. Ange ditt användarnamn och lösenord.

  9. Exportera informationen om platsen Kapitel 48 och spara exportfilen i huvudmappen php.

  10. Det är i PHP mycket enkelt att någonstans i en fil lägga in innehållet i en annan fil. Funktionen include() används till detta och likaså  funktionen require(). Läs gärna mer om dessa funktioner i manualen.

    Eftersom ovannnämnda två funktioner måste ingå i en fil när man ämnar göra en databasuppkoppling så har jag lagt dessa funktioner på två rader in en särkild fil vid namn connect.php. De 4 viktiga data som behövs för att en databaskoppling ska kunna ske har här angetts med variabler.

    Istället för att du direkt i den här filen fyller i ditt login och ditt lösenord mm skall du fylla i dessa uppgifter i ytterligare en fil som finnns i filen connect.php. Det är filen config.php. Dina 4 data anges i config.php som dessa variablers värden.

  11. Du ska nu öppna filen config.php och där skriva in login, password och databasnamn.

    Som server finns redan angivet localhost viket man skriver när MySQL är installerat på samma dator som webbserverprogrammet. Så är det också när det gäller Per Brahegymnasiets övningsserver.

    Om du använder PB:s övningsserver så är ditt usernamn/login anvxxx där du byter ut xxx mot något som du får av läraren.

    Databasnamnet är väldigt likt ditt username. Databasnamnet är db_anvxxx (där xxx byts ut mot samma tecken som ovan när det gäller användarnamnet).

    Ditt lösenord får du av din lärare.

    Man skulle kunna läggga in ytterligare variabler i filen config.php. Så är det också ofta när man hämtar olika färdiga paket på nätet. Nu finns det endast en ytterligare variabel som det är möjligt att använda sig av nämligen möjligheten att skriva tabellens namn om man använder bara en tabell och då skriver man $table istället för tabellnamnet i respektive fil men du skall inte använda dig av detta eftersom du kommer att arbeta med olika tabeller.

  12. Koden i filen connect.php


    <?

    include("config.php");

    $db = mysql_connect("$server", "$username", "$password");
    mysql_select_db("$database", $db);

    ?>

     
  13. Koden i filen config.php

    <?
    $server = "localhost";
    $username = "anvxxx";
    $password = "??????????";
    $database = "db_anvxxx";
    $table = "table";
    ?>

  14. Låt alltså mappen php motsvara huvudmappen på serven och mappen kap 48 blir på servern liksom på din plats en undermapp till huvudmappen.

  15. Klicka nu på Expandera/komprimera-ikonen i Platsfönstret och ladda upp allt till din webbplats i enlighet med informationen i ovanstående punkt. Fjärrplatsen och den lokala platsen synkroniserar då med varandra.

  16. Kontrollera därefter att fil 18 fungerar genom att gå till Internet på adressen: http://193.183.192.8/user/anvxxx/kap48/ där anvxxx byts ut mot ditt login som du har fått av din lärare.



  17. Klicka nu på Expandera/komprimera-ikonen i Platsfönstret och ladda upp allt till din webbplats i enlighet med informationen i ovanstående punkt. Fjärrplatsen och den lokala platsen synkroniserar då med varandra.

  18. Kontrollera nu att allt fungerar genom att gå till Internet på adressen: http://193.183.192.8/user/anvxxx/kap48/
  19. Du kommer först till en index-fil som länkar vidare. Jag räknar med att du redan har gjort de inledande övningar som den översta länken går till. Den mapp som vi först ska arbeta med är mappen skolpersonalen och i den finns 2 viktiga mappar. Om du klickar på länk 1 kommer du till mappen search. I den finns filer för besökare på Internet. Länk 2 går till i mappen edit. I den finns filer för personalen på skolan. Mappen edit måste man i verkligheten lösenordsskydda så att bara vissa personer har tillgång till den om man inte vill att vem som helst ska kunna ändra i uppgifterna.
  20. Testa nu först alla länkarna under länk 1 och 2 som gäller skolpersonalen. Titta på hela personalen, på den administrativa personalen (där finns nu inga bilder på personer utan istället bilder från Jönköping), på olika sätt på båda söksidorna, titta på den ev extra information som finns på en särskild sida, lägg till en person, ändra på en persons uppgifter, ta bort en person.
  21. Försök lägga till en person där också en bild ingår. Ta en person som inte presenteras bland den administrativa personalen. För att se bilden måste man då gå till sidan som erbjuder extra information om en person.
  22. Varför presenteras vissa av personerna som personer i den administrativa personalen och varför presenteras de i den här ordningen?
  23. Gör en fulltextsökning på "son" på söksida 2 och begär sorteringsordning efter programarbetslag. Blir sorteringen rätt? Varför inte?
  24. Nästan osynligt så finns det mellanslag i början när det gäller en del av uppgifterna om programarbetslag. Öppna Excelfilen med ditt ursprungsmaterial. Kolla i kolumnen för arbetslag. Ta bort mellanslagen. Spara som en skv-fil. Gå in phpMyAdmin och töm tabellen. Gå sedan in och importera den ändrade skv-filen. Testa sedan med en likadan sökning igen som i uppgift 14. Nu ska det bli rätt.
  25. Om man låter olika personer lägga in uppgifter så vet man aldrig när onödiga mellanslag läggs in som gör sökningar felaktiga. För att undvika detta kan man göra en liten ändring i koden på sidan som används för att uppdatera i databasen så att ev mellanslag som användaren gör vänster om ordet tas bort innan tabellen/databasen uppdateras.
  26. På sidan skolanaddedit.php lägger du nu in följande kod på två ställen:
    $program=ltrim($program);
    Om man vill att mellanslagen tas bort både till vänster och till höger så kan man istället skriva: $program=trim($program);
  27. Ev så vill man läggain den här koden gällande inte bara pogramarbetslag utan även för en del andra kolumner. Här är ett exempel för tre av kolumnerna:
    $program=ltrim($program);
    $Efternamn=ltrim($Efternamn);
    $Ämnen_el_Titel=ltrim($Ämnen_el_Titel);
  28. Ändra alltså så att koden ovan hamnar enligt nedan

    if($submit)

    {

    $db = mysql_connect...;
    mysql_select_db...;
    $program=ltrim($program);

    $sql = "INSERT INTO skolpersonal1

  29. Ändra också så att koden $program=ltrim($program); hamnar enligt nedan

    if($update)

    {

    $db = mysql_connect...;
    mysql_select_db...;
    $program=ltrim($program);
    $sql = "UPDATE skolpersonal1 SET

  30. När du nu är i phpmyAdmin så testar du med att ändra på uppgifterna där för en person. Testa sedan att försiktigt ändra lite när det gäller kolumnerna Fält och Typ för tabellen. Läs först i dokumentationen på adressen: http://www.mysql.com/doc/en/Column_types.html
    Ändra sedan när det gäller Typ om du finner något som är bättre eller lika bra som det som gäller nu.
  31. Testa att ändra lite i PHP-filen skolanview.php. Försök ändra sorteringsordning. Nu är det "ORDER BY Efternamn ASC" som gäller dvs sorteringen sker efter efternamn och stigande. Ändra t ex till att sorteringen sker efter "Ämnen_el_Titel".
    Om du är osäker så sök i dokumentationen på adressen:
    http://www.mysql.com/doc/en/
  32. När det gäller filen skolanadmview.php så är sorteringsordnigen lite mer komplicerad: "SELECT * FROM skolpersonal1 WHERE Rankadm>=1 AND Rankadm<=12 ORDER BY Rankadm ASC"
    För att rätt person ska komma överst så har varje person fått ett rankingtal som anger platsen vid sorteringen. Testa med att lägga till några ordningstal i tabellen och att sedan ändra i php-filen så att dessa personer kommer med.
  33. Testa ytterligare lite en stund. Fundera på hur du skulle kunna göra om allt så att det bättre passar för en databas för din klass om du är elev eller någon annan grupp som du tillhör. Gå varsamt framåt. Byt t ex namn på ett fält. Gör först några små ändringar och undersök att de fungerar på nätet. Lägg allltså in någon de av dig beslutade ändringarna i tabellen när det gäller Fält och Typ. Försök sedan göra motsvarande ändringar i php-filerna. En del av det viktigaste arbetet måste göras i kodläge.
  34. Du skulle kunna tömma tabellen och fylla den med riktiga uppgifter men med tanke på PUL så måste du vara försiktig med riktiga personuppgifter på nätet. Du behåller alltså låtsasuppgifterna. Om de inte passar in alls så tömmer du tabellen. Sedan sparar du om Excelfilen med ett nytt namn. och däreftr gör du en rejäl ändring med andra låtsasuppgifter som passar för dina ändringar.
  35. När det gäller mappen nyheter så behöver du skapa en tabell. Skapa en tabell i din databas med hjälp av filen nyheter.sql i mappen data.
  36. Mappen nyheter innehåller sidor som man kan använda om man vill publicera regelbundna nyheter gällande skolan. Den webbansvarige behöver ej vara inblandad själv vid publiceringen. Man lösenordsskyddar helt enkelt mappen edit och någon på expeditionen kan sköta publiceringen. Den här typen av information kan ibland vara sådan att man inte vill att alla skall komma åt den. Då kan man lösenordsskydda också mappen search och ge lösenordet till valda grupper. Testa länk 3 och 4 på indexsidan och om allt fungerar när det gäller de här sidorna.
  37. Lägg in några nyheter. Enbart de 7 första publiceras för besökare. Kontrollera om det är så.
  38. Din uppgift blir att gå in och manipulera och ändra så att sidorna och databasen passar för något som du finner intressant.
  39. När det gäller mappen kurs så behöver du skapa en tabell med data. Skapa en tabell i din databas med hjälp av filen kurs.sql i mappen data.
  40. Länk5 på ingångssida går till mappen kurs som erbjuder enbart två filer. Det här är ett exempel på hur man kan göra för att summera tal i några kolumner och hur man kan göra om man vill att det som presenteras på en sida ska bero på en uträkning. Att det här råkade bli en kurs var bara en tillfälllighet. Man kan säkert använda modellen till något helt annat.Testa att ändra en del. Försök sedan att ändra till något som passar dig.
  41. Använd dig också av de tidigare exemplen för att göra de här uppgifterna sökbara.
  42. När det gäller mappen enkat så behöver du skapa en tabell med data. Skapa en tabell med data i din databas med hjälp av filen enkat.sql i mappen data.
  43. I mappen enkat finns en enkät där elever tycker om olika ämnen - Eleven kan ändra i sina svar - Det totala tyckandet om ett ämne presenteras i ett stapeldiagram.
  44. Testa först att diagrammet ändras om du lägger in en ny enkät och om du ändrar i de tidigare enkäterna.
  45. Undersök hur det fungerar. Försök att ändra. Försök sedan hitta och hämta det franska scriptet: phPGraph hos Hotscript.
  46. Gör en egen enkät och presentera den sedan med hjälp av stapeldiagram.

Den här sidan uppdaterades senast 2003-08-26 av tommy.maltell@edu.jonkoping.se