Категорії
Електронні книги
-
Бізнес та економіка
- Біткойн
- Ділова жінка
- Коучинг
- Контроль
- Електронний бізнес
- Економіка
- Фінанси
- Фондова біржа та інвестиції
- Особисті компетенції
- Комп'ютер в офісі
- Комунікація та переговори
- Малий бізнес
- Маркетинг
- Мотивація
- Мультимедійне навчання
- Нерухомість
- Переконання та НЛП
- Податки
- Соціальна політика
- Порадники
- Презентації
- Лідерство
- Зв'язки з громадськістю
- Звіти, аналізи
- Секрет
- Соціальні засоби комунікації
- Продаж
- Стартап
- Ваша кар'єра
- Управління
- Управління проектами
- Людські ресурси (HR)
-
Для дітей
-
Для молоді
-
Освіта
-
Енциклопедії, словники
-
Електронна преса
- Architektura i wnętrza
- Biznes i Ekonomia
- Будинок та сад
- Електронний бізнес
- Фінанси
- Особисті фінанси
- Бізнес
- Фотографія
- Інформатика
- Відділ кадрів та оплата праці
- Комп'ютери, Excel
- Бухгалтерія
- Культура та література
- Наукові та академічні
- Охорона навколишнього середовища
- Впливові
- Освіта
- Податки
- Подорожі
- Психологія
- Релігія
- Сільське господарство
- Ринок книг і преси
- Транспорт та спедиція
- Здоров'я та краса
-
Історія
-
Інформатика
- Офісні застосунки
- Бази даних
- Біоінформатика
- Бізнес ІТ
- CAD/CAM
- Digital Lifestyle
- DTP
- Електроніка
- Цифрова фотографія
- Комп'ютерна графіка
- Ігри
- Хакування
- Hardware
- IT w ekonomii
- Наукові пакети
- Шкільні підручники
- Основи комп'ютера
- Програмування
- Мобільне програмування
- Інтернет-сервери
- Комп'ютерні мережі
- Стартап
- Операційні системи
- Штучний інтелект
- Технологія для дітей
- Вебмайстерність
-
Інше
-
Іноземні мови
-
Культура та мистецтво
-
Шкільні читанки
-
Література
- Антології
- Балада
- Біографії та автобіографії
- Для дорослих
- Драми
- Журнали, щоденники, листи
- Епос, епопея
- Нарис
- Наукова фантастика та фантастика
- Фельєтони
- Художня література
- Гумор, сатира
- Інше
- Класичний
- Кримінальний роман
- Нехудожня література
- Художня література
- Mity i legendy
- Лауреати Нобелівської премії
- Новели
- Побутовий роман
- Okultyzm i magia
- Оповідання
- Спогади
- Подорожі
- Оповідна поезія
- Поезія
- Політика
- Науково-популярна
- Роман
- Історичний роман
- Проза
- Пригодницька
- Журналістика
- Роман-репортаж
- Romans i literatura obyczajowa
- Сенсація
- Трилер, жах
- Інтерв'ю та спогади
-
Природничі науки
-
Соціальні науки
-
Шкільні підручники
-
Науково-популярна та академічна
- Археологія
- Bibliotekoznawstwo
- Кінознавство / Теорія кіно
- Філологія
- Польська філологія
- Філософія
- Finanse i bankowość
- Географія
- Економіка
- Торгівля. Світова економіка
- Історія та археологія
- Історія мистецтва і архітектури
- Культурологія
- Мовознавство
- літературні студії
- Логістика
- Математика
- Ліки
- Гуманітарні науки
- Педагогіка
- Навчальні засоби
- Науково-популярна
- Інше
- Психологія
- Соціологія
- Театральні студії
- Богослов’я
- Економічні теорії та науки
- Transport i spedycja
- Фізичне виховання
- Zarządzanie i marketing
-
Порадники
-
Ігрові посібники
-
Професійні та спеціальні порадники
-
Юридична
- Безпека життєдіяльності
- Історія
- Дорожній кодекс. Водійські права
- Юридичні науки
- Охорона здоров'я
- Загальне, компендіум
- Академічні підручники
- Інше
- Закон про будівництво і житло
- Цивільне право
- Фінансове право
- Господарське право
- Господарське та комерційне право
- Кримінальний закон
- Кримінальне право. Кримінальні злочини. Кримінологія
- Міжнародне право
- Міжнародне та іноземне право
- Закон про охорону здоров'я
- Закон про освіту
- Податкове право
- Трудове право та законодавство про соціальне забезпечення
- Громадське, конституційне та адміністративне право
- Кодекс про шлюб і сім'ю
- Аграрне право
- Соціальне право, трудове право
- Законодавство Євросоюзу
- Промисловість
- Сільське господарство та захист навколишнього середовища
- Словники та енциклопедії
- Державні закупівлі
- Управління
-
Путівники та подорожі
- Африка
- Альбоми
- Південна Америка
- Центральна та Північна Америка
- Австралія, Нова Зеландія, Океанія
- Австрія
- Азії
- Балкани
- Близький Схід
- Болгарія
- Китай
- Хорватія
- Чеська Республіка
- Данія
- Єгипет
- Естонія
- Європа
- Франція
- Гори
- Греція
- Іспанія
- Нідерланди
- Ісландія
- Литва
- Латвія
- Mapy, Plany miast, Atlasy
- Мініпутівники
- Німеччина
- Норвегія
- Активні подорожі
- Польща
- Португалія
- Інше
- Росія
- Румунія
- Словаччина
- Словенія
- Швейцарія
- Швеція
- Світ
- Туреччина
- Україна
- Угорщина
- Велика Британія
- Італія
-
Психологія
- Філософія життя
- Kompetencje psychospołeczne
- Міжособистісне спілкування
- Mindfulness
- Загальне
- Переконання та НЛП
- Академічна психологія
- Психологія душі та розуму
- Психологія праці
- Relacje i związki
- Батьківство та дитяча психологія
- Вирішення проблем
- Інтелектуальний розвиток
- Секрет
- Сексуальність
- Спокушання
- Зовнішній вигляд та імідж
- Філософія життя
-
Релігія
-
Спорт, фітнес, дієти
-
Техніка і механіка
Аудіокниги
-
Бізнес та економіка
- Біткойн
- Ділова жінка
- Коучинг
- Контроль
- Електронний бізнес
- Економіка
- Фінанси
- Фондова біржа та інвестиції
- Особисті компетенції
- Комунікація та переговори
- Малий бізнес
- Маркетинг
- Мотивація
- Нерухомість
- Переконання та НЛП
- Податки
- Порадники
- Презентації
- Лідерство
- Зв'язки з громадськістю
- Секрет
- Соціальні засоби комунікації
- Продаж
- Стартап
- Ваша кар'єра
- Управління
- Управління проектами
- Людські ресурси (HR)
-
Для дітей
-
Для молоді
-
Освіта
-
Енциклопедії, словники
-
Історія
-
Інформатика
-
Інше
-
Іноземні мови
-
Культура та мистецтво
-
Шкільні читанки
-
Література
- Антології
- Балада
- Біографії та автобіографії
- Для дорослих
- Драми
- Журнали, щоденники, листи
- Епос, епопея
- Нарис
- Наукова фантастика та фантастика
- Фельєтони
- Художня література
- Гумор, сатира
- Інше
- Класичний
- Кримінальний роман
- Нехудожня література
- Художня література
- Mity i legendy
- Лауреати Нобелівської премії
- Новели
- Побутовий роман
- Okultyzm i magia
- Оповідання
- Спогади
- Подорожі
- Поезія
- Політика
- Науково-популярна
- Роман
- Історичний роман
- Проза
- Пригодницька
- Журналістика
- Роман-репортаж
- Romans i literatura obyczajowa
- Сенсація
- Трилер, жах
- Інтерв'ю та спогади
-
Природничі науки
-
Соціальні науки
-
Науково-популярна та академічна
-
Порадники
-
Професійні та спеціальні порадники
-
Юридична
-
Путівники та подорожі
-
Психологія
- Філософія життя
- Міжособистісне спілкування
- Mindfulness
- Загальне
- Переконання та НЛП
- Академічна психологія
- Психологія душі та розуму
- Психологія праці
- Relacje i związki
- Батьківство та дитяча психологія
- Вирішення проблем
- Інтелектуальний розвиток
- Секрет
- Сексуальність
- Спокушання
- Зовнішній вигляд та імідж
- Філософія життя
-
Релігія
-
Спорт, фітнес, дієти
-
Техніка і механіка
Відеокурси
-
Бази даних
-
Big Data
-
Biznes, ekonomia i marketing
-
Кібербезпека
-
Data Science
-
DevOps
-
Для дітей
-
Електроніка
-
Графіка / Відео / CAX
-
Ігри
-
Microsoft Office
-
Інструменти розробки
-
Програмування
-
Особистісний розвиток
-
Комп'ютерні мережі
-
Операційні системи
-
Тестування програмного забезпечення
-
Мобільні пристрої
-
UX/UI
-
Веброзробка, Web development
-
Управління
Подкасти
- Електронні книги
- Програмування
- Методи програмування
- CouchDB and PHP Web Development Beginner's Guide
Деталі електронної книги
Увійти, Якщо вас цікавить зміст видання.
CouchDB is a NoSQL database which is making waves in the development world. It's the tool of choice for many PHP developers so they need to understand the robust features of CouchDB and the tools that are available to them.CouchDB and PHP Web Development Beginner's Guide will teach you the basics and fundamentals of using CouchDB within a project. You will learn how to build an application from beginning to end, learning the difference between the quick wayù to do things, and the right wayù by looking through a variety of code examples and real world scenarios. You will start with a walkthrough of setting up a sound development environment and then learn to create a variety of documents manually and programmatically. You will also learn how to manage their source control with Git and keep track of their progress. With each new concept, such as adding users and posts to your application, the author will take you through code step-by-step and explain how to use CouchDB's robust features. Finally, you will learn how to easily deploy your application and how to use simple replication to scale your application.
- CouchDB and PHP Web Development Beginners 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
- Support files, eBooks, discount offers and more
- 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
- What makes NoSQL different
- Introduction to CouchDB
- The history of CouchDB
- Defining CouchDB
- Summary
- The NoSQL database evolution
- 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
- Windows
- 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
- Operating systems
- 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
- What is CouchDB?
- 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
- What just happened?
- Time for action creating functions to access the route on Bones creation
- What just happened?
- Matching URLs
- What just happened?
- 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
- What just happened?
- 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
- What just happened?
- Time for action creating a standard object to encode to JSON
- What just happened?
- Committing it to Git
- What just happened?
- Time for action creating a CouchDB document with PHP and curl
- What just happened?
- Committing it to Git
- Is this technique good enough?
- What just happened?
- Available CouchDB libraries
- Sag
- Downloading and setting up Sag
- Time for action using Git to install Sag
- What just happened?
- Adding Sag to Bones
- What just happened?
- 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
- What just happened?
- 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
- What just happened?
- 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
- What just happened?
- Time for action adding functionality for users to log out
- What just happened?
- Handling the current user
- Time for action handling the current user
- What just happened?
- Summary
- Before we get started
- 7. User Profiles and Modeling Posts
- User profile
- Finding a user with routes
- Time for action getting single user documents
- What just happened?
- Time for action creating a route for user profiles
- What just happened?
- Time for action creating the user profile
- What just happened?
- Testing it out
- Adding your changes to Git
- Fixing some problems
- Finding errors
- What just happened?
- Time for action examining Apache's log
- What just happened?
- Handling 500 errors
- Time for action handling 500 errors with Bones
- What just happened?
- Time for action handling exceptions
- What just happened?
- Testing our exception handler
- Showing 404 errors
- 404 if user isn't found
- What just happened?
- Time for action : handling 404 errors with Bones
- What just happened?
- Showing 404 errors for unknown users
- Hooking up 404 all around the site
- What just happened?
- Time for action handling 404 errors with Bones
- What just happened?
- Testing it out
- Giving users a link to their profile
- Creating a better profile with Bootstrap
- What just happened?
- Time for action checking whether a user is currently logged in
- What just happened?
- Cleaning up the profile's design
- Let's check out our new profile
- Adding your changes to Git
- Cleaning up the profile's design
- What just happened?
- Posts
- Modeling Posts
- How to model posts in MySQL
- How to model posts in CouchDB
- Have a go hero setting up the Post class
- Modeling Posts
- Creating posts
- Time for action making a function to handle Post creation
- What just happened?
- Time for action making a form to enable Post creation
- What just happened?
- Time for action creating a route and handling the creation of the Post
- What just happened?
- Test it out
- Adding your changes to Git
- Wrapping up
- Summary
- User profile
- 8. Using Design Documents for Views and Validation
- Design documents
- A basic design document
- Views
- Map functions
- Time for action creating a temporary view
- What just happened?
- Time for action creating a view for listing posts
- What just happened?
- Querying map functions
- What just happened?
- Time for action querying the posts_by_user view
- What just happened?
- Using the view in our application
- What just happened?
- Time for action adding support to get_posts_by_user in the post class
- What just happened?
- Time for action adding posts to the user profile
- What just happened?
- Reduce functions
- What just happened?
- Time for action creating the reduce function in Futon
- What just happened?
- Time for action adding support to our application to consume the reduce function
- What just happened?
- More with MapReduce
- Validation
- What just happened?
- Time for action adding support for $_rev to our classes
- What just happened?
- Time for action adding support to delete posts in our application
- What just happened?
- CouchDB's support for validation
- What just happened?
- Time for action adding a validate function to ensure that only creators can update or delete their documents
- What just happened?
- Time for action hiding the delete buttons when not on the current user's profile
- What just happened?
- Wrapping up
- Want more examples?
- Working with design documents in Futon is too hard!
- Summary
- Design documents
- 9. Adding Bells and Whistles to your Application
- Adding jQuery to our project
- Installing jQuery
- Time for action adding jQuery to our project
- What just happened?
- Time for action creating master.js and connecting Boostrap's JavaScript files
- What just happened?
- Using jQuery to improve our site
- Fixing our delete post action to actually use HTTP delete
- Time for action improving our user experience by using AJAX to delete posts
- What just happened?
- Updating our route to use the DELETE HTTP method
- Let's test it out!
- Updating our route to use the DELETE HTTP method
- What just happened?
- Adding simple pagination using jQuery
- Time for action taking posts out of profile.php and putting them in their own partial view
- What just happened?
- Adding backend support for pagination
- Time for action adjusting our get_posts_by_user function to skip and limit posts
- What just happened?
- Let's test it out!
- What just happened?
- Time for action refactoring our code so it's not redundant
- What just happened?
- Time for action adding frontend support for pagination
- What just happened?
- Time for action fixing our delete post function to work with pagination
- What just happened?
- Testing our complete pagination system
- What just happened?
- Using Gravatars
- Time for action adding Gravatars to our application
- What just happened?
- Testing our Gravatars
- Adding everything to Git
- Summary
- Adding jQuery to our project
- 10. Deploying your Application
- Before we get started
- Application hosting
- CouchDB hosting
- Database hosting with Cloudant
- Getting started with Cloudant
- Creating a _users database
- Creating a verge database
- Have a go hero give it a shot yourself
- Using Futon on Cloudant
- Configuring permissions
- Configuring our project
- Time for action creating a configuration class
- What just happened?
- Time for action adding our configuration file to Bones
- What just happened?
- Adding changes to Git
- Application hosting with PHP Fog
- Setting up a PHP Fog account
- Creating environment variables
- Deploying to PHP Fog
- Adding our SSH key to PHP Fog
- Connecting to PHP Fog's Git repository
- Get the repository from Php Fog
- Connecting to the repository from Git
- Deploy to PHP Fog
- Replicating local data to production
- Time for action replicating our local _users database to Cloudant
- What just happened?
- Have a go hero replicating the local verge database to Cloudant
- What's next?
- Scaling your application
- Next steps
- Summary
- Before we get started
- A. Pop quiz Answers
- Chapter 2, Setting up your Development Environment
- Chapter 3, Getting Started with CouchDB and Futon
- Index
- Назва: CouchDB and PHP Web Development Beginner's Guide
- Автор: Tim Juravich
- Оригінальна назва: CouchDB and PHP Web Development Beginner's Guide.
- ISBN: 9781849513593, 9781849513593
- Дата видання: 2012-06-22
- Формат: Eлектронна книга
- Ідентифікатор видання: e_3bpb
- Видавець: Packt Publishing