PHP and MySQL Tutorials

PHP is a server side scripting language, it is a powerful tool for making dynamic and interactive Web pages. This tutorial will introduce you to PHP, after reading this tutorial you'll be able to make dynamic websites and web applications.

Getting Started

PHP is similar to high-level languages such as C, Perl, Pascal, FORTRAN, and Java, and programmers who have experience with...


In this tutorial, we introduce the MySQL database management system (DBMS) and the SQL database query language for defining and...

Querying Web Databases

This tutorial is the first of six that introduce practical web database application development. In this tutorial, we introduce the basics of connecting to the MySQL DBMS with PHP...

User-Driven Querying

We focus here on user-driven querying, in which the user provides data that controls the query process...

Writing to Web Databases

Writing data in web database applications requires different techniques than reading data. Issues of transactions and concurrency become important, and we introduce these issues and the principles of dealing with them in this tutorial...

Validation on the Server and Client

Validation is essential to web database applications. Ensuring that data meets user and system requirements is important, but ensuring that the...


In this tutorial we will discuss how sessions are managed, Introduce cookies, configure PHP session management library, PHP session management...

Authentication and Security

There are many database applications in which restrictions need to be applied to control user access. Some applications deal with sensitive ...

Winestore Customer Management

This tutorial is the first of four that outline the case study winestore application. It contains an overview of the complete application, as well...

Shopping Cart

In this tutorial, we introduce the shopping cart developed for the online winestore. The shopping cart is typical of those used in online stores: the user can add items to the cart and manage the quantities of the different items. The solution we outline is scalable and practical.

Ordering and Shipping at the Winestore

We complete our description of the shopping components of the winestore by outlining the ordering and shipping modules in this tutorial...

Related Topics

This tutorial completes our outline of the online winestore. We present here the completed searching and browsing module, and two related topics in web database applications

Installation Guide

This tutorial is a guide to installing the software used. The first section presents the steps to install and configure MySQL, Apache...

Internet and Web Protocols

In this tutorial, we introduce the networking protocols and standards of the Internet. The first part give a brief overview of the networking protocol TCP/IP and its basic principles. The second, larger part of this appendix is a discussion of HTTP...

Database Applications and the Web

With the growth of the Web over the past decade, there has been a similar growth in services that are accessible over the Web.

Modeling and Designing Relational Databases

Relational database management systems, or RDBMSs, maintain, enforce, and use relationships between data.

Object Oriented Programming in PHP

One of the key features of object-oriented programming (OOP) is the ability to create new data types in which the data and the implementation of operations are bound together...

Regular Expressions

Regular expressions enables to find and extract more complicated pieces of information in a strings and do this in a multiple-byte character set environment ...

Manipulating Strings

Of all data types PHP supports, strings are probably the ones most often used. One of the reasons for this is that, at some point, a string representation of something is needed when sending out something to the client...

Working with Arrays

This tutorial presents the most important problems you'll have to solve when working with arrays and, of course, solutions for these problems.

Date and Time

The date and time functionalities of PHP 5 are used for printing out the current date and time. But apart from that, working with date and time in PHP offers many other possibilities, most of which you will find in this tutorial.

Interacting with Web Forms

HTML forms are one of the key ingredients of any dynamic website because they can enable the users of a site to interact with it. Therefore, using data from forms from within PHP is very important.

Remembering Users

HTTP is a stateless protocol, a web browser connects to a web server, sends a request, and gets a response. Then, the connection is closed. The consequence is the next time the same client sends a request to the same web server, it is a new request, so the web server cannot identify the caller. This is, of course, a problem for applications in which state must be maintained, for instance e-commerce applications with a shopping-cart functionality.

Using Files on the Server File System

Although databases are very common, using the file system to store data can be a real alternative. Often, it is easier to implement that way. Sometimes, it is faster, and much more importantly, all hosting providers have file access enabled, whereas database support might only be available at extra cost.

Making Data Dynamic

This tutorial tackles quite a number of databases and shows the basic operations with them: connecting, sending SQL statements, and evaluating the return values. No matter what your database-driven web application must do, it always has to do these steps.

Using XML

Unfortunately, PHP 4's XML support was somewhat limited. Some extensions did not prove to be very stable. This changed drastically with PHP 5 and a revamped XML support.

Communicating with Others

In this tutorial you'll find the variety of ways to connect to remote servers.