Have a question?
Message sent Close
4.5 out of 5
4.5
140 reviews on Udemy

Server-side web GIS applications with Leaflet and PostGIS

Accessing common data stores
Instructor:
Michael Miller
1,069 students enrolled
English [Auto]
Develop complex web GIS applications using data stored in a PostGIS database with open source software that doesn't require any licensing fees or subscriptions.

Server-side web GIS applications allow you to access GIS data stored in a multi-user database. This means that your data will always be current and any changes that other users make to the data will be immediately available in your application. You will be able to build complex GIS applications where some users will only be able to view certain data that you allow them and other users will be able to add, edit, and delete data from a web-interface. This means that your users will be able to interact with your GIS database from any device that has a compatible browser and an internet connection. They may be working in the field from a mobile device or from home on a mac OS computer, or on the other side of the world on a Linux computer.

This course uses PHP for the server-side language because of its popularity and its wide availability on web servers. We will use PostGIS as a spatial database, again because of its popularity and common usage in GIS applications. I teach standard web development methods that have stood the test of time and will still be available in many years after the latest, greatest, technology has been replaced with something even better. My goal as an instructor is to provide an introduction to the basic concepts. I don’t think you will find any limitations with the software that I teach but if you ultimately decide to use a different server-side language, database, or a newer framework the methods you learn here will provide a solid foundation.

Best of all, this course uses all open source software so there are no costs involved. I have had projects involving more than 50 people, including clients, accessing the same database through web interfaces and desktop GIS for several years with no problem and with no cost other than web-hosting which cost us about $10/month total. 

Introduction

1
Introduction
2
Static vs Dynamic data
3
Software for this course
4
Getting started
5
Loading spatial data into PostGIS
6
Password protecting the page

Working with PostGIS data

1
Converting PostGIS data to GeoJSON
2
PHP script to create GeoJSON from PostGIS
3
Calling load_baea.php from Leaflet via AJAX
4
Generalizing our load_data php script
5
Creating a load data function
6
Adding the other spatial data
7
Adding the other spatial data part 2
8
Cleaning up loose ends
9
Refreshing data layers from the server
10
Handling database errors

Moving other functions to server-side operations

1
Creating buffers with PostGIS
2
Using our buffer function in the application
3
Filtering with the database
4
Filtering with SQL Part 2
5
Searching with SQL
6
Filtering Part 2 - Callback functions

Working with non-spatial data

1
Loading non-spatial data into PostGIS
2
Creating a modal dialog
3
Returning non-spatial data as a table
4
Cleaning up the table
5
Adding non-spatial survey data to search function

Analyzing PostGIS data with spatial SQL

1
Single table spatial queries and the geography data type
2
Multi-table queries joined on a spatial relationship
3
Finding Projects impacted by constraints
4
Debugging and adding to other constraints
5
Finding constraints impacted by projects
6
Using the Leaflet PM plug-in
7
Analyzing features created by the draw tool
8
Moving to a tabbed sidebar
9
Adding Content to a tabbed sidebar
10
Cleaning up the client web app

Preparing for editing

1
Creating a new group in the CMS for editors
2
Preparing the database for editing
3
Modifying the survey table field names
4
Accessing the current user information from JavaScript
5
Accessing the current date and time from JavaScript
6
Working with sequences in PostgreSQL
7
Refactoring the survey results as a function

Editing non-spatial data

1
Adding edit and delete buttons to the survey results
2
Wiring the delete button to a generic php delete record script
3
Creating a survey form and populating with survey data
4
Creating a survey form and populating with form data part 2
5
Converting the result input to a select element
6
Updating the database from the form
7
Adding a new survey
8
The insert_data.php script
9
Creating custom select options from the database

Editing spatial data

1
Refactoring our PHP Scripts
2
Refactoring CSS and JavaScript
3
Changing text boxes to select elements and populating them
4
Adding delete and edit buttons
5
Deleting features
6
Editing feature attributes
7
Editing spatial data
8
Editing spatial data - Part 2
9
Handling GeoJSON in the update records PHP script
10
Modifying the form for adding data
11
Creating new geometries
12
Handling geometries on the server side
13
Working with multi-part geometries in leaflet - editing parts

Finishing Touches

1
Cleaning things up
2
Cleaning things up Part 2
3
Working with multi-part geometries in leaflet - adding and deleting parts
4
Deleting parts from multi-part features
5
Issues with adding editing capability to other datasets
6
Taking it live
7
Creating a new map with reduced functionality
8
Where to go next?

Bonus Lectures

1
Installing Chrome, Brackets, Apache, and PHP
2
Installing PostgreSQL and PostGIS
3
Installing QGIS
4
Anatomy of a URL
5
All about GeoJSON
6
Geometry vs. Geography data types
7
Bonus Lecture: How to get the most from my series of Udemy courses.
You can view and review the lecture materials indefinitely, like an on-demand channel.
Definitely! If you have an internet connection, courses on Udemy are available on any device at any time. If you don't have an internet connection, some instructors also let their students download course lectures. That's up to the instructor though, so make sure you get on their good side!
4.5
4.5 out of 5
140 Ratings

Detailed Rating

Stars 5
92
Stars 4
37
Stars 3
8
Stars 2
1
Stars 1
2
2aecb4b903928502341bc0d80eb58eb7

Includes

17 hours on-demand video
Certificate of Completion

About

AulaGEO is a Ge-engineering specialized academy.

Social Network

Udemy Black Friday Sale! Top Courses From $9.99