- View Offline
This course was updated on 6/12/2012.
- Understanding dynamic versus static content
- Adding PHP commands to web pages
- Setting and outputting variables
- Using server-side includes
- Creating PHP custom classes
- Adding the Zend Framework to a PHP installation
- Creating a MySQL database
- Adding data in phpMyAdmin
- Building recordsets
- Formatting dynamic data
- Building data entry forms
- Authenticating users
- Deploying a dynamic site
Skill Level Intermediate
In a previous video, I described the available server software that you can choose from, and I specifically talked about Apache, PHP, and MySQL, the three elements that together are known as the AMP technology. I'd like to talk a little bit here about the nature of multi-tier applications, which is how we describe the architecture used in web-based applications. Multi-tier means that there are multiple elements that go into building a web-based application.
The client tier is the first tier. It's the one that the user interacts with directly, and it typically consists of a web browser hosted on a personal computer or other Internet connected device. On the server, there are three major tiers: the web tier, or Gateway, which receives request from the client, typically implemented as an HTTP server; the business tier, which contains the business logic on the server, typically implemented in an application server; and the data tier, typically implemented in a database server, such as MySQL, SQL Server or Oracle.
All of this taken together is known as the client tier. The server part of a multi-tier application is implemented with multiple software packages that are designed to work together using web standards. The first tier is known as the web tier, or The HTTP server, and once again, it receives the request from the client and returns the response. Many of these responses are text- based, including HTML, Hyper Text Markup Language, and XML, Extensible Markup Language.
Other content returned by the HTTP server would include binary files, such as images and Flash SWF files. The business tier is the application server and once again the data tier is the database server. In a server environment that uses AMP technologies, the web server is Apache, the application server is PHP, and the database server is MySQL. If you choose, you can download native versions of the server software packages.
The three packages together are known as the AMP technology stack. You'll typically see them called WAMP, if they're hosted on Windows, LAMP on Linux, and MAMP on Mac OS X. If you want to download and install each element of the server stack individually, you can go to the web sites that host these packages. You'll find the Apache software at www.apache.org, PHP at php.net, and MySQL at mysql.com.
If you download these individual software packages, it's up to you to configure them to work together. Depending on which operating system you're working on and which installer you download, you'll get a certain amount of help in configuring them to work together. But if you want to get launched very quickly, you can instead choose to use a server bundle. A server bundle allows you to get started very quickly with almost no configuration. All of the server bundles I'm going to recommend here are free to download and use, and once you download, you can install them and get started using them almost instantly.
If you're working on Windows, I recommend WampServer, which you'll find at www.wampserver.com/en. This is the server bundle that I'll be using in all of the demonstrations in this video series. I typically do my web development on the Windows platform, and this is my favorite server bundle for Windows, because it's so easy to install and so tough to get wrong. If I'm working on Mac OS X, I typically choose MAMP, which you'll find at www.mamp.info/en, and I'll give you complete instructions in this video series about how to install MAMP, and how to use it during the video series.
Even though most of my demonstrations will be shown on Windows with WAMP server, I'll mention how you should adapt those instructions if you're using MAMP. There are other options though, that I won't be using in this video series, but are worth checking out. There are two packages in particular that are designated from multiple operating systems. The first is called Xampp, X-a-m-p-p. You'll find this at www.apachefriends.org/en/xampp.html.
There are versions of the Xampp server for both Mac OS X and for Windows. They're named the same, but they actually have different sets of software in them. They both include Apache, PHP, and MySQL, but they have different options and different user interfaces for managing them. And finally, there is the Zend Server Community Edition, available at www.zend.com/en/products/server-ce.
The Zend Server Community Edition is probably the most complete of these server bundles. In addition to Apache, PHP, and MySQL, it also contains the complete Zend framework, a set of open source PHP- based tools that can simplify your use of the PHP application server. I'm not using the Zend Server Community Edition package in this video series, only because it's a little bit more complex to set up, particularly on Mac OS X, but if you get serious about doing PHP development, particularly if you learn how to hand-code PHP and get into more complex application options, I find that the Zend server package is the most powerful of any of these options.
To summarize though, I'll be using WampServer on Windows for these demonstrations, and I'll be mentioning along the way how to adapt my instructions if you're using MAMP on Mac OS X.
Sign up for a Premium Membership to download courses for Internet-free viewing.
Watch offline with your iOS, Android, or desktop app.Start Your Free Trial
After signing up, download the course here or from the iOS/Android App.