Cover image for CouchDB and PHP Web Development Beginner’s Guide.
CouchDB and PHP Web Development Beginner’s Guide.
Title:
CouchDB and PHP Web Development Beginner’s Guide.
Author:
Juravich, Tim.
ISBN:
9781849513593
Personal Author:
Edition:
1st ed.
Physical Description:
1 online resource (376 pages)
Contents:
CouchDB and PHP Web Development Beginner's Guide -- Table of Contents -- CouchDB and PHP Web Development Beginner's Guide -- Credits -- About the Author -- About the Reviewers -- www.PacktPub.com -- Support files, eBooks, discount offers and more -- Why Subscribe? -- Free Access for Packt account holders -- Preface -- What this book covers -- What you need for this book -- Who this book is for -- Conventions -- Time for action - heading -- What just happened? -- Pop quiz - heading -- Have a go hero - heading -- Reader feedback -- Customer support -- Downloading the example code -- Errata -- Piracy -- Questions -- 1. Introduction to CouchDB -- The NoSQL database evolution -- What makes NoSQL different -- Classification of NoSQL databases -- CAP theorem -- ACID -- So what does all of that mean? -- Advantages of NoSQL databases -- Negatives of NoSQL databases -- When you should use NoSQL databases -- When you should avoid NoSQL databases -- Introduction to CouchDB -- The history of CouchDB -- Defining CouchDB -- Summary -- 2. Setting up your Development Environment -- Operating systems -- Windows -- Installing Apache and PHP -- Installing Git -- Installing CouchDB -- Linux -- Installing Apache and PHP -- Installing Git -- Installing CouchDB -- Setting up your web development environment on Mac OS X -- Terminal -- Time for action - using Terminal to show hidden files -- What just happened? -- Text editor -- Apache -- Web browser -- Time for action - opening your web browser -- What just happened? -- PHP -- Time for action - checking your PHP version -- What just happened? -- Time for action - making sure that Apache can connect to PHP -- What just happened? -- Time for action - creating a quick info page -- What just happened? -- Fine tuning Apache -- Time for action - further configuration of Apache -- What just happened?.

Our web development setup is complete! -- Installing CouchDB -- Homebrew -- Time for action - installing Homebrew -- What just happened? -- Time for action - installing CouchDB -- What just happened? -- Checking that our setup is complete -- Starting CouchDB -- Time for action - checking that CouchDB is running -- What just happened? -- Running CouchDB as a background process -- Installing version control -- Git -- Time for action - installing and configuring Git -- What just happened? -- Did you have any problems? -- Pop quiz -- Summary -- 3. Getting Started with CouchDB and Futon -- What is CouchDB? -- Database server -- Documents -- Example of a CouchDB document -- JSON format -- Key-value storage -- Reserved fields -- RESTful JSON API -- Time for action - getting a list of all databases in CouchDB -- What just happened? -- Time for action - creating new databases in CouchDB -- What just happened? -- Time for action - deleting a database In CouchDB -- What just happened? -- Time for action - creating a CouchDB document -- What just happened? -- Futon -- Time for action - updating a document in Futon -- What just happened? -- Time for action - creating a document in Futon -- What just happened? -- Security -- Time for action - taking CouchDB out of Admin Party -- What just happened? -- Time for action - anonymously accessing the _users database -- What just happened? -- Time for action - securing the _users database -- What just happened? -- Time for action - checking to make sure the database is secure -- What just happened? -- Time for action - accessing a database with security enabled -- What just happened? -- Pop quiz -- Summary -- 4. Starting your Application -- What we'll build in this book -- Bones -- Project setup -- Time for action - creating the directories for Verge -- What just happened? -- Source control with Git.

Time for action - initializing a Git repository -- What just happened? -- Implementing basic routing -- Time for action - creating our first file: index.php -- What just happened? -- .htaccess files -- Time for action - creating the .htaccess file -- What just happened? -- Hacking together URLs -- Creating the skeleton of Bones -- Time for action - hooking up our application to Bones -- What just happened? -- Using Bones to handle requests -- Time for action - creating the class structure of Bones -- What just happened? -- Accessing the route -- Time for action - creating functions to access the route on Bones creation -- What just happened? -- Matching URLs -- Time for action - creating the register function to match routes -- What just happened? -- Calling the register function from our application -- Time for action - creating a get function in our Bones class -- What just happened? -- Adding routes to our application -- Time for action - creating routes for us to test against Bones -- What just happened? -- Testing it out! -- Adding changes to Git -- Handling layouts and views -- Using Bones to support views and layouts -- Time for action - using constants to get the location of the working directory -- What just happened? -- Time for action - allowing Bones to store variables and the content path -- What just happened? -- Time for action - allowing our application to display a view by calling it in index.php -- What just happened? -- Time for action - creating a simple layout file -- What just happened? -- Adding views to our application -- Time for action - rendering views inside of our routes -- What just happened? -- Time for action - creating views -- What just happened? -- Adding changes to Git -- Adding support for other HTTP methods -- Time for action - retrieving the HTTP method used in a request -- What just happened?.

Time for action - altering the register to support different methods -- What just happened? -- Time for action - adding simple but powerful helpers to Bones -- What just happened? -- Using a form to test our HTTP method support -- Testing it out! -- Adding changes to Git -- Adding support for complex routing -- Handling complex routes -- Accessing route variables -- Adding more complex routes to index.php -- Testing it out! -- Adding changes to Git -- Adding support for public files -- Time for action - altering .htaccess to support public files -- What just happened? -- Time for action - creating a stylesheet for the application -- What just happened? -- Adding changes to Git -- Publishing your code to GitHub -- Get complete code from GitHub -- Summary -- 5. Connecting your Application to CouchDB -- Before we get started -- Time for action - creating a database for Verge with curl -- What just happened? -- Diving in head first -- Adding logic to our signup script -- Time for action - adding an e-mail field to the signup form -- What just happened? -- Using curl calls to post data to CouchDB -- Time for action - creating a standard object to encode to JSON -- What just happened? -- Committing it to Git -- Time for action - creating a CouchDB document with PHP and curl -- What just happened? -- Committing it to Git -- Is this technique good enough? -- Available CouchDB libraries -- Sag -- Downloading and setting up Sag -- Time for action - using Git to install Sag -- What just happened? -- Adding Sag to Bones -- Time for action - adding Sag to Bones -- What just happened? -- Simplifying our code with Sag -- Time for action - creating a document with Sag -- What just happened? -- Adding more structure -- Time for action - including the classes directory -- What just happened? -- Working with classes -- Time for action - creating a Base object.

What just happened? -- Time for action - creating a User object -- What just happened? -- Time for action - plugging the User object in -- What just happened? -- Testing it out -- Committing it to Git -- Wrapping up -- Summary -- 6. Modeling Users -- Before we get started -- Cleaning up our interface by installing Bootstrap -- Time for action - installing Bootstrap locally -- What just happened? -- Time for action - including Bootstrap and adjusting our layout to work with it -- What just happened? -- Time for action - sprucing up the home page -- What just happened? -- Moving all user files into the user folder -- Time for action - organizing our user views -- What just happened? -- Designing our user documents -- How CouchDB looks at basic user documents -- Adding more fields to the user document -- Discussing options for adding these fields -- Adding support for the additional fields -- Time for action - adding the fields to support the user documents -- What just happened? -- The signup process -- A little administrator setup -- Updating the interface -- Quick and dirty signup -- Time for action - handling simple user signup -- What just happened? -- SHA-1 -- Testing the signup process again -- Refactoring the signup process -- Time for action - cleaning up the signup process -- What just happened? -- Exception handling and resolving errors -- Deciphering error logs -- Time for action - examining Apache's log -- What just happened? -- Time for action : Examine CouchDB's log -- What just happened? -- Catching errors -- Time for action - handling document update conflicts using SagCouchException -- What just happened? -- Showing alerts -- Time for action - showing alerts -- What just happened? -- User authentication -- Setting up for the login form -- Have a go hero - setting up the routes and forms for login -- Logging in and logging out.

Time for action - adding functionality for users to log in.
Abstract:
Get your PHP application from conception to deployment by leveraging CouchDB's robust features with this book and ebook.
Local Note:
Electronic reproduction. Ann Arbor, Michigan : ProQuest Ebook Central, 2017. Available via World Wide Web. Access may be limited to ProQuest Ebook Central affiliated libraries.
Electronic Access:
Click to View
Holds: Copies: