The Design Diaries Project 3 2. Semester. Blog om designprincipper

Relaterede dokumenter
Design Diaries.

PROJEKT 3. The Design Diaries. LINK TIL BLOG: Af Mikkel Borg Svendsen & Sebastian Frank MUL B

The Design Diaries PHP projekt

DESIGN. Blog: Portfolioer: CPH-mails:

The Design Diaries. Link til blog

MODUL 2 ASSIGNMENT 3 PHP/DB SYSTEM 9. OKTOBER 2016

PHP Snippets. De små korte. Skrevet af Daniel Pedersen

Indholdsfortegnelse Databaser og PHP... 3 Opgave... 4 Opgave... 5 Opgave... 6 Sidste opgave er en lille gæstebog... 7 Kilder og nyttige links:...

Projekt database. 3 Semester - Mul a Projekt 1. Yaser Osman cph-mo102@cphbusiness.dk. Dan Eskildsen cph-de32@cphbusiness.dk

Gæstebog med validering opbygget med MySQL

3. SEMESTER 2. PROJECT MULB Gruppe september 2015

I denne arktikle går jeg gennem Slet, Ret og Opret data i en MySQL database. der er også en lille del i den hvor den postere datanen ud i en løkke

Begrynder til at lave log ind system

POST IT! Cph Business Academy Multimediedesign 2. Semester flow april Kirstine Marie Rasmussen cph-

Øvelse 9. Klasser, objekter og sql-tabeller insert code here

Uploade billeder eller andre filer ved hjælp af php og mysql

PHP Crash course. Databaser

Tagwall med Php & MySQL

De vigtigste SQL-sætninger. SQL kap Oprette database. DDL og DML

Database. Pr jekt. Hold CLmul-a14e Gruppe 3 3. semester Vejledere: Tue Becher Ivan R. Frederiksen

PHP 3 UGERS FORLØB PHP, MYSQL & SQL

Reeksamen, DSDS, forår 2008

Begrænsninger i SQL. Databaser, efterår Troels Andreasen

Projekt 3: Interaktionsudvikling 11/04.14

Ratingsystem i PHP og MySQL

Web 2.0. World Wide Web (www)

3. semester, 2. projekt: Database

Hack of the Month opgave 2

Eksamen, DSDS, forår 2009

Projekt 1 - Database. Cphbusiness Lyngby Multimediedesigner, 3. semester. MulB13e, gruppe 4

Gruppe nr. MULB2, Multimediedesign 3. semester hold B. Tue Becher Jesper Hinchely

Databaseadgang fra Java

Introduktion til SQL queries

Bemærk! Et PHP script har kun brug for at forbinde én gang til databaseserveren. Det kan så sagtens udføre flere kommandoer vha. denne forbindelse.

Loginsystem (med MySQL)

Eksamen, DSDS, efterår 2007

Da jeg selv bruger Windows, så vil programmer osv. være til Windows, og beskrevet ud fra en Windowsbrugers

Dynamisk PHP design OPDATERET

Interaktionsudvikling

Undervisningsbeskrivelse

Loginsystem med PHP4, klasser, sessions og MySQL database

Indholdsfortegnelse If-sætningen... 3 Opgaver... 4 OR, AND sammen med if-sætningen... 5 Rand() funktion... 5 Opgave... 5 Include() funktionen...

Eksamen, DSDS, efterår 2008

Denne rapport er skrevet af:

MySQL C API. Denne artikel beskriver hvordan man bruger MySQL C API. Der er beskrivelse af build med forskellige compilere.

1 Indlæsning af script

Data lagring. 2. iteration (implement backend)

PROJEKT WEB_DB CROWDFUNDING

Log ind med PHP. Denne guide er oprindeligt udgivet på Eksperten.dk. Skrevet den 09. May 2011 af dab93 I kategorien Programmering / Andre

if (mysqli_num_rows($res) > 0) { while ($result = $res->fetch_array(mysqli_assoc)) { "<div class=\"article\">".

Projekt 1 Database. Cphbusiness Lyngby Multimediedesigner, 3. semester mul-a12e, gruppe 1

Data load og udtræk. 2. iteration: implmentation (test af backend) PHP mysql. Loade og parse XML (SimpleXML, Xpath) Filhåndtering i PHP JSON

Projekt titel. Projekt navn. Gruppe medlemmer. Klasse/Gruppenummer. Databaseprojekt 1. Ferrari

Ordbøgerne.dk. Navne: Andreas Foldager og Rasmus Bjerring Pedersen Fag: IT B Lærer: Karl Bjarnason Afleveringsdato:

Jayne Alice Jensen [Link til portfolio]

DATABASE Projekt 1-3. semester

Views etc. Databaser

Introduktion til Oracle, Datalogi, RUC Af: Jens Lauterbach 2002

I mit script tager jeg højde for det problem ved, at gemme et unikt tal mellem 0-9 på 6 cifre og derved vil de så blive vist som 2 online.

1. Indholdsfortegnelse

Eksamen, DSDS, forår 2008

Dette er en grundlæggende artikel til hvordan du laver et lille community, med forskelige

Webteknologi evalueringsopgave Vinter Niels Sundstrup

! Kia Dahlen. Kamilla Klein, Pia Jensen og Maria Korshøj Andersen.

CFunding-IT. Web DB Multimediedesigner 3. Semester Gruppe 15

Skrevet den 18. Feb 2010 af arne_v I kategorien Programmering / Visual Basic.NET

Modul 2 Database projekt Multimediedesign 3. semester Gruppe 3 IRF/TUJE

Terese B. Thomsen 1.semester Formidling, projektarbejde og webdesign ITU DMD d. 02/

HTML, PHP, SQL, webserver, hvad er hvad??

Matematik læringsprojekt Journal

Web DB project semester - 3. projekt - Gruppenr. 23 MULA - September 2015

Værktøjer fra værktøjskassen. Søren Breddam, Stevns Kommune

! Kia Dahlen. Kamilla Klein, Pia Jensen og Maria Korshøj Andersen.

Parameters. Denne artikel beskriver hvorfor parameters er gode. Den forudsætter lidt kendskab til C# og ADO.NET.

GUIDE TIL OPRETTELSE AF SIDER OG INDHOLD I UMBRACO ONLINE BETJENING

Url

Projekt Database, Gruppe 4A. Projekt 1, 3. Semester D A T A B A S E. Klasse MulA13 Gruppenummer: A4

A11: Last Year s Exam

Website review groweasy.dk

Upload af billeder/filer for nybegyndere Del. 2

Sådan kan du sende data fra din egen hjemmeside til JitBesked via en HTML-JDF.

Anne Randorff Højen

Prepared Statements. Denne artikel beskriver hvorfor prepared statements er gode. Den forudsætter lidt kendskab til Java og JDBC.

JSP, Tomcat. Tutorial lavet af Jákup W. Hansen TSU semester 10.october 2007

De skjulte input typer:

Med register_globals = On får du automatisk adgang til en række variabelnavne i dit script.

SQL Server 2016 Data Adgang

Website sikkerhed SQL Injections og mere...

En opsamling af artefakter for Hotel Databasen som REST-service Bygger på Hotel opgaven i 8 trin

Introduktion til programmering

Indholdsfortegnelse. Rasmus R. Sørensen, Christina Svenstrup og Lasse Bager 1

klient Webside Forespørgsel/ Nye data Python program Database kommando svar Database

CentOS 7. Lavet af Ali Sarac og Andreas Jensen

En Kort Introduktion til Oracle

SKOLELOGIN KNANPU1 FULDE NAVN ANAN PUSKAR URL TIL LØSNING URL TIL PORTFOLIO

Database. lv/

Netværk & elektronik

Transkript:

The Design Diaries Project 3 2. Semester Blog om designprincipper

By Lif Neergaard www.lifmediadesign.dk cph-ln175@cphbusiness.dk Mathias Larsen www.nefjam.dk cph-ml414@cphbusiness.dk Ida Christensen www.idamedia.dk cph-ic42@cphbusiness.dk Opgaveformulering: MUL A Vi skal skabe en blog online, hvor alle og enhver kan oprette et indlæg. Vi i gruppen skal lave 3 indlæg hver, hvor i vi har valgt at skrive om nogle af de 20 designprincipper. Hvert indlæg skal indeholde et billede. Websitet hvor bloggen er skal være responsiv og skrevet i PHP7, derudover skal vi også lave en database, en Use Case og en Use Case beskrivelse. Lærende skal kunne give feedback ved, at oprette deres eget indlæg på bloggen.

Attribute table: Attribute Table Entity Relation Attributes Value Notes Datatype Length blog Id Auto Primary Key, auto generated uniqe number Integer ~ headline allchar Headline of article VarChar 50 (Javascript validation minimum 5 characters) text allchar The text for the article text 1000 (Javascript validation requried) author allchar name or nickname of the VarChar 50 author to the article (Javascript validation minimum 2 characters) image allchar Image regarding article (optional) VarChar 255

Use case:

Use Case beskrivelse: Use Case ID 4 Use Case Name Slet indlæg Actor Bruger Description Kunne slette det indlæg man selv har opretter og andres. Man trykker på knappen "slet", hvor efter der kommer en alertboks op hvor der står "om man er sikker på om man vil slette - ok eller annuller" Preconditions At der er nogen opslag på bloggen (Ellers er der ingen at slette) og at man trykker "ok" ved alertboksen Postconditions At indlægget bliver slettet på bloggen samt i databasen eller man har trykket annuller Basic Course 1. Tryk på "Admin" 2. Find indlæg man vil slette el. skriv indlæg 3. Tryk på knappen "slet" 4. Alert-boks kommer op 5. Tryk "OK" 6. Indlægget bliver slettet Alternate 1. Tryk på "Admin" Course 2. Find oplag man vil slette 3. Tryk på knappen "slet" 4. Alert-boks kommer op 5. Tryk "Annuller" 6. Indlægget bliver ikke slettet

PHP7 kode: Index.php: <?php // forbindelsesobjekt $connection = new MySQLi (HOSTNAME, MYSQLUSER, MYSQLPASS, MYSQLDB); // set_charset() metoden for at sikre at usædvanlige tegn kommer med under transfer-processen $connection->set_charset("utf8"); // virker det eller ej if($connection->connect_error){ die($connection->connect_error); // læse fra databasen // formuler et SQL query $data = $connection->query("select * FROM posts"); // få resultatet tilbage som array // Udfgiv flere database records med en "while" loop //"så længe du er i stand til at få en array ud af databasen" while ($sqlresult = $data->fetch_array()){ // En HTML table-række med 4 felter indeni

echo '<div class="infobox1">'; echo '<h3>'. $sqlresult['headline']. '</h3>'; echo '<p class="info">'. $sqlresult['text']. '</p>'; // inserting an image if present! echo '<td>'; if($sqlresult['image']){ echo '<img src="'.$sqlresult['image']. '" alt="'. $sqlresult['headline']. '">'; echo '</td>'; echo '<p>indlæg af: '. $sqlresult['author']. '</p>'; echo '</div>';?> Admin.php: <?php //tjek om POST-array findes + at knappen er blevet aktiveret if(isset($_post['opretemne'])){ // forbindelsesobjekt $connection = new MySQLi (HOSTNAME, MYSQLUSER, MYSQLPASS, MYSQLDB); // set_charset() metoden for at sikre at usædvanlige tegn kommer med under transfer-processen $connection->set_charset("utf8"); // virker det eller ej if($connection->connect_error){ die($connection->connect_error); //Få fat i POST array data

// Sikring mod SQL injection $headline = mysqli_real_escape_string($connection,$_post['headline']); $text = mysqli_real_escape_string($connection,$_post['text']); $author = mysqli_real_escape_string($connection,$_post['author']); ///////////////////////// ///// Image upload ///// ///////////////////////// $uploadok = 0; // Billedet er ikke opbligatorisk! betyder NOT, så der står IF FILE NOT EMPTY, ADD FILES if(!empty($_files['filetoupload']['name'])) { $target_dir = "images/"; //specifies the directory where the file is going to be placed $target_file = $target_dir. basename($_files['filetoupload']['name']); //specifies the path of the file to be uploaded $uploadok = 1; move_uploaded_file($_files['filetoupload']['tmp_name'], $target_file); //tmp_name contains the actual copy of your file content on the server /////////// END image upload //////////// if($uploadok == 1){ $sql = "INSERT INTO posts (headline, text, author, image) VALUES ('$headline', '$text', '$author', '$target_file')"; else { $sql = "INSERT INTO posts (headline, text, author) VALUES ('$headline', '$text', '$author')";

if(mysqli_query($connection, $sql)){ echo "<p style='color:green; font-size:18px; text-align:center; padding-bottom:15px;'>nyt indlæg er oprettet</p>"; else{ echo "<p style='color:red; font-size:18px; text-align:center; padding-bottom:15px;'>noget gik galt</p>"; // Forbindelsen lukkes igen: mysqli_close($connection); // end if condition?> Edit.php: <?php //Finder de eksisterende værdier frem fra databasen if(isset($_get['id'])){ $id = $_GET['id']; $headline = ""; $text = ""; $author =""; // Opdatere databasen med nye værdier if(isset($_post['submit'])) { //Få fat i POST array data // Sikring mod SQL injection $headline = mysqli_real_escape_string($connection,$_post['headline']); $text = mysqli_real_escape_string($connection,$_post['text']);

$author = mysqli_real_escape_string($connection,$_post['author']); = '$author' WHERE id = '$id'"; mysqli_query($connection, $sql); echo "<p style='color:green; font-size:18px; text-align:center; paddingbottom:15px;'>indlægget er rettet</p>"; $sql = "UPDATE posts SET headline = '$headline', text = '$text', author else { // Hvis intet er ændret så behold eksisterende værdier $sql = "SELECT * FROM posts WHERE id=$id"; $result = mysqli_query($connection, $sql); $row = mysqli_fetch_array($result); $headline = $row['headline']; $text = $row['text']; $author = $row['author']; // Forbindelsen lukkes igen: mysqli_close($connection);?> <!--Hvis man bruge echo i value så kan man se det der i forvejen står i databasen--> <form class="wrap" method="post" enctype="multipart/form-data"> Overskrift:<br> <input class="input" type="text" name="headline" value="<?php echo $headline?>" /><br> Tekst:<br> <textarea class="textarea" name="text"><?php echo $text?></textarea><br> Indlæg af:<br> <input class="input" type="text" name="author" value="<?php echo $author?>" /><br> <input id="button" type="submit" value="rediger" name="submit" />

</form> Slet.php: <?php require_once("db_connect.php"); // forbindelsesobjekt $connection = new MySQLi (HOSTNAME, MYSQLUSER, MYSQLPASS, MYSQLDB); // set_charset() metoden for at sikre at usædvanlige tegn kommer med under transfer-processen $connection->set_charset("utf8"); // virker det eller ej if($connection->connect_error){ die($connection->connect_error); // Sletter fra databasen med matchende ID og sender brugeren tilbage til admin siden. (Brugeren kommer aldrig til at se denne side) $id = $_GET['id']; $sql = "DELETE FROM posts WHERE id=$id"; $result = mysqli_query($connection, $sql);?> header("location: admin.php");exit;