LIS-S 517 Web Programming
3 credits
- Prerequisite(s): LIS-S 500, LIS-S 507
- Delivery: Online
- Semesters offered: Fall (Check the schedule to confirm.)
Description
This course covers the development of interactive web applications, focusing on server-side programming, including the implementation of web–database connections. Students build web interfaces that can retrieve and display data dynamically from a data source. You start with a simple review of HTML5 and CSS so that you are able to create responsive web design (RWD) for all work posted online. Special emphasis is given to accessible markup, especially in forms. Basic PHP is next introduced (variables, control structures, arrays, functions) to enable you to become acclimated to coding and programming. You finally learn to create a simple MySQL database that you can then access with a PHP script in order to output secure results online to a browser, either as a dynamic web page or as the result of a user search or interaction with your forms.
Program Learning Goals Supported
Instructors map their courses to specific LIS Program Goals. Mapped program goals drive the design of each course and what students can expect to generally learn.
- Organize and Represent Information
- Innovate Professional Practice with Information Services and Technology
- Examine Systemic Inequalities to Improve Library and Information Practices through Equitable and Socially Just Interventions
Learning Outcomes
Instructors develop learning outcomes for their courses. Students can expect to be able to achieve the learning outcomes for a given course after successfully completing the course.
- Edit and upload a valid and accessible web page.
- Write HTML to the browser with PHP.
- Declare and call variables.
- Create an accessible form using current W3C and accessibility standards.
- Create a secure form to prevent unauthorized manipulation.
- Determine PHP control structures.
- Manipulate PHP arrays and functions.
- Access and retrieve data from a relational database using SQL via PHP.
- Format output from data retrieval using HTML/CSS.
- Design a front-end form or display to a relational database.
Course Overview
Instruction is in Canvas. Lessons are organized into Modules whose length may vary.
Module 1: Publishing on the Web
- Introduction to HTML and CSS
- Editing a web page
- Web validity
- Uploading a web file to a web server
- Web accessibility
Module 2: Responsive HTML, Basic PHP Syntax
- Basic HTML, CSS syntax
- Basic PHP syntax
- Testing a PHP script
- Sending text to the browser
- Sending HTML to the browser
- Adding comments to PHP, HTML, CSS
Module 3: PHP Variables
- HTML/CSS Review
- PHP variables
- Quotation marks
- PHP variables scope
Module 4: PHP for HTML Forms (1)
- Creating a simple form
- GET vs POST
- Receiving form data in PHP
- Error reporting
Module 5: PHP for HTML Forms (2)
- Form accessibility
- Using operators
- Using strings
- Form security
Module 6: PHP Control Structures
- The if statement
- The if...else statement
- The if...elseif...else statement
- The switch statement
- The for loop
- while loops
Module 7: PHP Arrays
- Arrays
- Creating an Array
- Accessing Array Elements
- Sorting Arrays
- Transforming Between Strings and Arrays
- Creating an Array from a Form
Module 8: PHP for HTML forms (3)
- Creating a template
- Using constants
- Handling HTML Forms with PHP, Revisited
- Making Forms Sticky
Module 9: PHP Functions; Introduction to Relational Databases
- Functions
- Creating and calling functions that take arguments
- Setting default argument values
- Creating and using functions that return a value
- Variable scope
- Introduction to relational database theory
Module 10: Accessing and Retrieving Data from Databases (1)
- Connecting to MySQL and handling errors
- Creating a table and inserting data
- Retrieving data from a database
- Updating and deleting data in a database
Module 11: Accessing and Retrieving Data from Databases (2)
- Retrieving data from a database (cont.)
- Installing a sample database
- Handling user input
- Signaling an "Unsuccessful Search" to users
- SQL Injection
- User entry error
- Accessibility issues
Module 12: Accessing and Retrieving Data from Databases (3)
- Retrieving data via SQL
- Output display
Module 13: Accessing and Retrieving Data from Databases (4)
- Displaying dynamic data
- Full-text searching in MySQL
- Exporting and importing your data
Module 14: Formatting Output from Databases Retrievals
- Samples to review: web interfaces to retrieve and display data dynamically
Module 15: Completion of Final Project
Policies and Procedures
Please be aware of the following linked policies and procedures. Note that in individual courses instructors will have stipulations specific to their course.