Topic 1: Web programming (PHP). ▫ Topic 2: ... Using MySQL to create and
access online databases ... R. Nixon, Learning PHP, MySQL & JavaScript,. O'
Reilly ...
Spring Semester: Introduction
Five parts
Introduction (this lecture) Topic 1: Web programming (PHP) Topic 2: Web data (MySQL) Topic 3: Data, Protocols, Security and e-Commerce Guest Lecture (29 Apr 2013): ▪
Stuart Green, CEO of ZOO Digital Group plc
Reading weeks for this module There will be no COM1004 lectures or practical classes following the assignment hand-in deadline on May 3rd. 2
Stuart Green (ZOO Digital Group plc) ZOO Digital Group plc is a software company headquartered in Sheffield that has become a leading supplier of innovative Cloud-based workflow management and automation software used by some of the world's largest media companies including Disney, Warner Bros. and Paramount.
[Text credit: The University of Sheffield Computer Science Society] 3
An introduction to PHP what is it? what is it for?
Programming in PHP variables, loops, assignments, if-then-else, etc
Using PHP with HTML Simplifying page production Interactive form handling
4
Storing user data when processing web pages Using MySQL to create and access online databases Building interactive data-driven web sites using PHP and MySQL Other approaches
5
The need for ethical frameworks the Data Protection Act; relevance to society at large
Protocols How is data transmitted? How does the receiver know
how to interpret what it sees?
Security What needs to be kept secure? How to encrypt data,
how to break (simple) cryptosystems
Common strategies for attacking e-commerce sites, and for defending against them 6
Available TODAY on MOLE 2. Deadline is 6.00pm on May 3rd. TWO DELIVERABLES: • A short survey (10%) • A professionally constructed system, with supporting documentation (20%) HAND-IN BOTH PARTS on MOLE 2 This assignment counts 30% towards the final year-end COM1004 mark.
7
http://www.dcs.shef.ac.uk/~mps/courses/com1004/
How to write an assignment
Places to find relevant papers
Development platforms
8
The PHP web site www.php.net
Luke Welling and Laura Thomson PHP and MySQL Web Development (4th ed.) Addison-Wesley, 2009
R. Nixon, Learning PHP, MySQL & JavaScript, O’Reilly, 2009. Available as an e-Resource from the Library. 9
10
11
BEWARE: Code developed at home may not work on the network.
This tells you about PHP and MySQL on the DCS network
12
13
14
Exercise sheets Available each Wednesday on MOLE 2 & the course
web page
Practical sessions Friday 12.00-12.50 Mark Warburton & Cong Ye
Office hours I'll be in my office every Monday afternoon from
1.00-1.50 in weeks 1-10 to answer questions (room 111, Regent Court) . To see me at other times, please make an appointment using Google Calendar. 15
Add my name here to access my calendar. Try to work out when I'm likely to be free.
Beware - not all of my appointments are listed. 16
Choose a suitable time, and add an event on your OWN calendar. Edit your event, and add me as a guest. Save the changes, and say yes when asked if you want to send the guests an email. Don't send a separate email! The appointment isn't made unless I confirm that I'll be attending !!! 17
Assignment 2 18
AVAILABLE: • 2.00 pm • Mon 4th Feb DETAILS: • 2 deliverables • 30% of final year grade DEADLINE: • 6.00 pm • Fri 3rd May
The aim of this assignment is to practice using research to inform the design and implementation of a professionally written software system. These skills will become increasingly important as your degree programme progresses. 19
Assignment 2 counts 30% towards the final COM1004 grade for the year, split between two deliverables: a written survey (10%) a professionally designed and implemented server-side
web application (20%)
You can submit either deliverable early if you wish, but you will not be able to resubmit a second version later. No submitted work will be marked before the submission deadline. 20
This is an individual assignment. You are encouraged to read widely, and to debate your ideas with friends and colleagues, but the work you submit must be entirely your own. Any material taken from other sources must be properly referenced, and it must be legal for you to include it. More details concerning unfair means can be found in the Undergraduate Handbook. 21
If you're not sure whether you are collaborating too closely with your friends or colleagues …
(there are severe penalties for getting it wrong) 22
You're expected to spend around 10 hours per credit (including time spent in lectures) The course is worth 20 credits (200 hours)
60 hours spent in lectures/lab classes ▪ 140 hours outside lectures ▪ 42 hours on this 10-week assignment (30% x 140) Approximately 4 hours per week
Start now and work steadily. Don't leave it to the end! 23
Deliverables 24
1. SURVEY WEB STORAGE OPTIONS
10% of final year grade
Interactive web sites often require data to be stored - but what options are available?
Write a survey describing systems that web designers can use to store data. Read relevant academic papers, and then write a document that summarises your findings.
25
http://www.dcs.shef.ac.uk/~mps/courses/com1004/resources.php
26
Deliverables 27
2. SYSTEM TEXT-TO-IMAGE CONVERSION
20% of final year grade
• Web sites often display email addresses as text • These can be harvested by robots and used by spammers • Possible solution: display an image instead 28
Build a web page Containing a form with an input box If the user enters an email address and clicks OK The page responds by displaying that address as
an image … … and provides a URL to an online version of the image that the user can download
29
Store separate images for each letter? Respond to the form by gluing together the relevant
letter-images to build the complete picture
Construct the whole picture using PHP? Store the new image online, and keep a record of its
URL
Something else? What's the best way to store relevant data? Use your survey results! 30
Professional design Requirements analysis, design, implementation,
testing, ethics Documentation Clarity, inventiveness, program structure, appropriate storage IT MUST RUN ON THE DCS SERVER Systems installed elsewhere will NOT be marked 31
Here's a really simple text-as-image picture produced using PHP on the DCS server:
Hopefully your images will be a bit more inventive than this! 32
Using your own computer? You can use any development system you like. Components • PHP • MySQL • Apache
Combined systems • easyPHP • WampServer • Netbeans • … and others 33