// 
//     Licensed to the Apache Software Foundation (ASF) under one
//     or more contributor license agreements.  See the NOTICE file
//     distributed with this work for additional information
//     regarding copyright ownership.  The ASF licenses this file
//     to you under the Apache License, Version 2.0 (the
//     "License"); you may not use this file except in compliance
//     with the License.  You may obtain a copy of the License at
// 
//       http://www.apache.org/licenses/LICENSE-2.0
// 
//     Unless required by applicable law or agreed to in writing,
//     software distributed under the License is distributed on an
//     "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
//     KIND, either express or implied.  See the License for the
//     specific language governing permissions and limitations
//     under the License.
//

= Creating a Database Driven Application With NetBeans IDE PHP Editor
:jbake-type: tutorial
:jbake-tags: tutorials 
:jbake-status: published
:icons: font
:syntax: true
:source-highlighter: pygments
:toc: left
:toc-title:
:description: Creating a Database Driven Application With NetBeans IDE PHP Editor - Apache NetBeans
:keywords: Apache NetBeans, Tutorials, Creating a Database Driven Application With NetBeans IDE PHP Editor


==== Tutorial contents:

1. *=> Creating a Database Driven Application With PHP - Main page*

2. Creating the Database

1. link:wish-list-lesson1.html[+Creating a MySQL Database+]
2. link:wish-list-oracle-lesson1.html[+Creating Oracle Database Tables+]
3. 
link:wish-list-lesson2.html[+Designing the Application. Reading from the Database+]

4. link:wish-list-lesson3.html[+ Creating a New Application User +]
5. link:wish-list-lesson4.html[+Optimizing the Code+]
6. link:wish-list-lesson5.html[+Adding Security. Implementing Application User Logon+]
7. link:wish-list-lesson6.html[+Adding a New Wish to the Database+]
8. link:wish-list-lesson7.html[+Updating and Deleting Entries in the Database+]
9. link:wish-list-lesson8.html[+Making the Application Look Better Using the CSS Technology+]
10. link:wish-list-lesson9.html[+Deploying the Application on a Remote Web Server+]

In this tutorial, you use the PHP features in the Apache NetBeans to create and run a simple web application. The example shows how to create a wish list. After you create and deploy the application, it enables you to share information on wish lists with your friends, such as lists for wedding, birthday, or holiday gifts. The information is stored in the database that you create in Lesson 1.

Any registered user is able to view the wish lists of other users, and you develop this functionality in Lesson 2.

The application supports registration of new users, a functionality that you develop in Lesson 3.

In Lesson 4 you receive tips for making the code easier to maintain.

Lesson 5 provides you with possible solutions for security issues.

In Lessons 6 and 7 you develop functionality that enables each registered user to edit their own wish list.

You add styles to improve the appearance of your application by applying a CSS style sheet in Lesson 8. Finally, you deploy the application on a remote web server using the hints given in lesson 9.

Code is provided for both users of the MySQL database and users of Oracle Database. The tutorial uses the  ``mysqli``  and OCI8 APIs. For users interested in PDO, a PDO version of the complete tutorial is available for link:https://netbeans.org/projects/www/downloads/download/php/wishlist-pdo.zip[+download+]. Note that the PDO_OCI API is experimental!


*To follow this tutorial, you need the following software and resources.*

|===
|Software or Resource |Version Required 

|A PHP engine |Version 5 

|A web server |link:http://httpd.apache.org/download.cgi[+Apache HTTP Server 2.2+] is recommended.
 

|A database server |MySQL, OracleXE, or Oracle11g 
|===

For details on installing and configuring the required software, see the document that describes link:../../trails/php.html#configuration[+preparing the environment for PHP development+] in your operating system.


== Next Step:

link:wish-list-lesson1.html[+Creating a MySQL Database+]

or

link:wish-list-oracle-lesson1.html[+Creating Oracle Database Tables+]
