Web Database Applications with PHP and MySQL. 2nd Edition
- Autorzy:
- Hugh E. Williams, David Lane
- Ocena:
- Bądź pierwszym, który oceni tę książkę
- Stron:
- 820
- Dostępne formaty:
-
ePubMobi
Opis ebooka: Web Database Applications with PHP and MySQL. 2nd Edition
There are many reasons for serving up dynamic content from a web site: to offer an online shopping site, create customized information pages for users, or just manage a large volume of content through a database. Anyone with a modest knowledge of HTML and web site management can learn to create dynamic content through the PHP programming language and the MySQL database. This book gives you the background and tools to do the job safely and reliably.Web Database Applications with PHP and MySQL, Second Edition thoroughly reflects the needs of real-world applications. It goes into detail on such practical issues as validating input (do you know what a proper credit card number looks like?), logging in users, and using templatesto give your dynamic web pages a standard look.But this book goes even further. It shows how JavaScript and PHP can be used in tandem to make a user's experience faster and more pleasant. It shows the correct way to handle errors in user input so that a site looks professional. It introduces the vast collection of powerful tools available in the PEAR repository and shows how to use some of the most popular tools.Even while it serves as an introduction to new programmers, the book does not omit critical tasks that web sites require. For instance, every site that allows updates must handle the possibility of multiple users accessing data at the same time. This book explains how to solve the problem in detail with locking.Through a sophisticated sample application--Hugh and Dave's Wine Store--all the important techniques of dynamic content are introduced. Good design is emphasized, such as dividing logic from presentation. The book introduces PHP 5 and MySQL 4.1 features, while providing techniques that can be used on older versions of the software that are still in widespread use.This new edition has been redesigned around the rich offerings of PEAR. Several of these, including the Template package and the database-independent query API, are fully integrated into examples and thoroughly described in the text. Topics include:
- Installation and configuration of Apache, MySQL, and PHP on Unix®, Windows®, and Mac OS® X systems
- Introductions to PHP, SQL, and MySQL administration
- Session management, including the use of a custom database for improved efficiency
- User input validation, security, and authentication
- The PEAR repository, plus details on the use of PEAR DB and Template classes
- Production of PDF reports
Wybrane bestsellery
-
Ten znakomity podręcznik programowania dla początkujących sprawi, że nauka PHP i MySQL będzie przyjemna i efektywna. Został pomyślany tak, aby po zapoznaniu się z najpotrzebniejszymi, kluczowymi informacjami szybko przystąpić do tworzenia stron internetowych ― i w ten sposób wraz z przyswaj...
PHP i MySQL. Aplikacje internetowe po stronie serwera PHP i MySQL. Aplikacje internetowe po stronie serwera
(77.40 zł najniższa cena z 30 dni)90.30 zł
129.00 zł(-30%) -
This book helps you create efficient databases, covering data modeling, query optimization, and more. You'll be equipped with the skills needed to design robust databases using PostgreSQL and MySQL for modern data-driven applications.
Database Design and Modeling with PostgreSQL and MySQL. Build efficient and scalable databases for modern applications using open source databases Database Design and Modeling with PostgreSQL and MySQL. Build efficient and scalable databases for modern applications using open source databases
(78.48 zł najniższa cena z 30 dni) -
Explore the essentials of PHP programming and algorithmic concepts, starting from the basics. This course offers step-by-step guidance to help you understand how computers work, how to use development environments, and more.
PHP and Algorithmic Thinking for the Complete Beginner. Learn to think like a programmer by mastering PHP and algorithmic thinking PHP and Algorithmic Thinking for the Complete Beginner. Learn to think like a programmer by mastering PHP and algorithmic thinking
-
To wydanie książki zostało zaktualizowane pod kątem języka PHP 8. Za jej pomocą opanujesz solidne podstawy programowania zorientowanego obiektowo w PHP, a następnie zapoznasz się z zasadami projektowania kodu, narzędziami i zalecanymi rozwiązaniami, które ułatwiają tworzenie, testowanie i wdrażan...
PHP 8. Obiekty, wzorce, narzędzia. Poznaj obiektowe usprawnienia języka PHP, wzorce projektowe i niezbędne narzędzia programistyczne. Wydanie VI PHP 8. Obiekty, wzorce, narzędzia. Poznaj obiektowe usprawnienia języka PHP, wzorce projektowe i niezbędne narzędzia programistyczne. Wydanie VI
(77.40 zł najniższa cena z 30 dni)90.30 zł
129.00 zł(-30%) -
Dive into SQL & master database management! From basics to advanced data manipulation, this book offers practical techniques to fully harness SQL. Perfect for beginners and those refining skills!
Learn SQL using MySQL in One Day and Learn It Well. SQL for beginners with Hands-on Project Learn SQL using MySQL in One Day and Learn It Well. SQL for beginners with Hands-on Project
-
Moodle 4 Security offers practical guidance on securing your platform by exploring Moodle’s security-related issues. This book will enable you to protect your Moodle platform from potential attacks, ensuring the security of your data.
Moodle 4 Security. Enhance security, regulation, and compliance within your Moodle infrastructure Moodle 4 Security. Enhance security, regulation, and compliance within your Moodle infrastructure
-
This book will help you adopt the Ruby mindset and get to grips with Ruby-related concepts. You'll learn about setting up your local environment, Ruby syntax, popular frameworks, and more. A language-agnostic approach will help you avoid common pitfalls and start integrating Ruby into your projects.
From PHP to Ruby on Rails. Transition from PHP to Ruby by leveraging your existing backend programming knowledge From PHP to Ruby on Rails. Transition from PHP to Ruby by leveraging your existing backend programming knowledge
-
API to akronim pochodzącego z języka angielskiego terminu application programming interface, co tłumaczy się jako interfejs programowania aplikacji. W praktyce to zestaw zasad i protokołów, które pozwalają różnym programom komunikować się ze sobą. API może być używane do inte...
REST API i Symfony. Kurs video. Nowoczesne aplikacje w PHP REST API i Symfony. Kurs video. Nowoczesne aplikacje w PHP
(67.05 zł najniższa cena z 30 dni)74.50 zł
149.00 zł(-50%) -
To książka adresowana do początkujących programistów, którzy chcą zacząć pisać czysty kod w PHP. Znajdziesz w niej przystępnie wyjaśnione koncepcje, a także szereg wskazówek, opisów dobrych praktyk, wzorców projektowych i technik pracy. Treść została podzielona na dwie części. W pierwszej wyjaśni...
Czysty kod w PHP. Wskazówki ekspertów i najlepsze rozwiązania pozwalające pisać piękny, przystępny i łatwy w utrzymaniu kod PHP Czysty kod w PHP. Wskazówki ekspertów i najlepsze rozwiązania pozwalające pisać piękny, przystępny i łatwy w utrzymaniu kod PHP
(40.20 zł najniższa cena z 30 dni)46.90 zł
67.00 zł(-30%) -
Skoro zainteresował Cię ten kurs, Twoje informatyczne serce najprawdopodobniej bije w rytmie projektowania aplikacji, które mają wydajnie działać w sieci. To świetnie, ponieważ proponowane przez nas szkolenie pozwala poznać dwie kluczowe technologie, dzięki którym będziesz w stanie samodzielnie b...
PHP i MySQL. Kurs video. Twórz strony i aplikacje webowe PHP i MySQL. Kurs video. Twórz strony i aplikacje webowe
(59.59 zł najniższa cena z 30 dni)67.05 zł
149.00 zł(-55%)
Ebooka "Web Database Applications with PHP and MySQL. 2nd Edition" przeczytasz na:
-
czytnikach Inkbook, Kindle, Pocketbook, Onyx Boox i innych
-
systemach Windows, MacOS i innych
-
systemach Windows, Android, iOS, HarmonyOS
-
na dowolnych urządzeniach i aplikacjach obsługujących formaty: PDF, EPub, Mobi
Masz pytania? Zajrzyj do zakładki Pomoc »
Audiobooka "Web Database Applications with PHP and MySQL. 2nd Edition" posłuchasz:
-
w aplikacji Ebookpoint na Android, iOS, HarmonyOs
-
na systemach Windows, MacOS i innych
-
na dowolnych urządzeniach i aplikacjach obsługujących format MP3 (pliki spakowane w ZIP)
Masz pytania? Zajrzyj do zakładki Pomoc »
Kurs Video "Web Database Applications with PHP and MySQL. 2nd Edition" zobaczysz:
-
w aplikacjach Ebookpoint i Videopoint na Android, iOS, HarmonyOs
-
na systemach Windows, MacOS i innych z dostępem do najnowszej wersji Twojej przeglądarki internetowej
Szczegóły ebooka
- ISBN Ebooka:
- 978-14-493-9632-9, 9781449396329
- Data wydania ebooka:
- 2004-05-13 Data wydania ebooka często jest dniem wprowadzenia tytułu do sprzedaży i może nie być równoznaczna z datą wydania książki papierowej. Dodatkowe informacje możesz znaleźć w darmowym fragmencie. Jeśli masz wątpliwości skontaktuj się z nami sklep@ebookpoint.pl.
- Język publikacji:
- angielski
- Rozmiar pliku ePub:
- 2.6MB
- Rozmiar pliku Mobi:
- 2.6MB
Spis treści ebooka
- Web Database Applications with PHP and MySQL, 2nd Edition
- SPECIAL OFFER: Upgrade this ebook with OReilly
- A Note Regarding Supplemental Files
- Preface
- What This Book Is About
- What You Need to Know
- How This Book Is Organized
- How to Use This Book
- Conventions Used in This Book
- Using Code Examples
- How to Contact Us
- Web Site and Code Examples
- Acknowledgments
- 1. Database Applications and the Web
- 1.1. The Web
- 1.2. Three-Tier Architectures
- 1.2.1. HTTP: the Hypertext Transfer Protocol
- 1.2.1.1. HTTP example
- 1.2.1. HTTP: the Hypertext Transfer Protocol
- 1.2.2. State
- 1.2.3. Thickening the Client in the Three-Tier Model
- 1.2.4. The Middle Tier
- 1.2.4.1. Web servers
- 1.2.5. Web Scripting with PHP
- 1.2.5.1. Introducing PHP5
- 1.2.6. The Database Tier
- 1.2.7. Database Management Systems
- 1.2.7.1. SQL
- 1.2.7.2. Why use a database server?
- 1.2.7.3. Examples of when to use a database server
- 1.2.7.4. Examples of when not to use a DBMS
- 1.2.7.5. The MySQL server
- 1.2.7.6. Introducing MySQL 4
- 2. The PHP Scripting Language
- 2.1. Introducing PHP
- 2.1.1. PHP Basics
- 2.1.1.1. Creating PHP scripts
- 2.1.1.2. Comments
- 2.1.1.3. Outputting data with echo and print
- 2.1.1. PHP Basics
- 2.1.2. String Literals
- 2.1.2.1. Variable substitution
- 2.1.2.2. Character encoding
- 2.1. Introducing PHP
- 2.1.3. Variables
- 2.1.4. Types
- 2.1.5. Constants
- 2.1.6. Expressions, Operators, and Variable Assignment
- 2.1.6.1. Operator precedence
- 2.2. Conditions and Branches
- 2.2.1. if...else Statement
- 2.2.2. switch Statement
- 2.2.3. Conditional Expressions
- 2.3. Loops
- 2.3.1. while
- 2.3.2. do...while
- 2.3.3. for
- 2.3.4. Changing Loop Behavior
- 2.4. Functions
- 2.5. Working with Types
- 2.5.1. Type Conversion
- 2.5.2. Automatic Type Conversion
- 2.5.3. Examining Variable Type and Content
- 2.5.3.1. Is-identical and is-not-identical operators
- 2.5.3.2. Debugging with gettype( ), print_r( ), and var_dump( )
- 2.5.3.3. Testing, setting, and unsetting variables
- 2.6. User-Defined Functions
- 2.6.1. Parameter Types and Return Types
- 2.6.2. Variable Scope
- 2.6.2.1. Global variables
- 2.6.2.2. Static variables
- 2.6.3. Passing Variables to Functions
- 2.6.3.1. Passing parameters by reference
- 2.6.3.2. Assigning by reference
- 2.6.3.3. Default parameter values
- 2.6.4. Reusing Functions with Include and Require Files
- 2.6.4.1. Managing include files
- 2.7. A Working Example
- 3. Arrays, Strings, and Advanced Data Manipulation in PHP
- 3.1. Arrays
- 3.1.1. Creating Arrays
- 3.1.1.1. Associative arrays
- 3.1.1.2. Removing elements from an array
- 3.1.1.3. Array order
- 3.1.1.4. Heterogeneous arrays
- 3.1.1.5. Multidimensional arrays
- 3.1.1. Creating Arrays
- 3.1.2. Using foreach Loops with Arrays
- 3.1.3. Basic Array Functions
- 3.1.3.1. Counting elements in arrays
- 3.1.3.2. Functions that create arrays
- 3.1.3.3. Exploding and imploding strings
- 3.1.3.4. Finding the maximum and minimum values in an array
- 3.1.3.5. Finding values in arrays with in_array( ) and array_search( )
- 3.1.3.6. Keys and values
- 3.1.3.7. Joining two or more arrays
- 3.1.3.8. Reordering elements with array_reverse( )
- 3.1. Arrays
- 3.1.4. Sorting Arrays
- 3.1.4.1. Sorting with sort( ) and rsort( )
- 3.1.4.2. Sorting associative arrays
- 3.1.4.3. Sorting on keys
- 3.1.4.4. Sorting with user-defined element comparison
- 3.2. Strings
- 3.2.1. Length of a String
- 3.2.2. Printing and Formatting Strings
- 3.2.2.1. Creating formatted output with sprintf( ) and printf( )
- 3.2.2.2. Padding strings
- 3.2.2.3. Changing case
- 3.2.2.4. Trimming whitespace
- 3.2.3. Comparing Strings
- 3.2.4. Finding and Extracting Substrings
- 3.2.4.1. Extracting a substring from a string
- 3.2.4.2. Finding the position of a substring
- 3.2.4.3. Extracting a found portion of a string
- 3.2.5. Replacing Characters and Substrings
- 3.2.5.1. Replacing substrings
- 3.2.5.2. Translating characters and substrings
- 3.3. Regular Expressions
- 3.3.1. Regular Expression Syntax
- 3.3.1.1. Characters and wildcards
- 3.3.1.2. Character lists
- 3.3.1.3. Anchors
- 3.3.1.4. Optional and repeating characters
- 3.3.1.5. Groups
- 3.3.1.6. Alternative patterns
- 3.3.1.7. Escaping special characters
- 3.3.1.8. Metacharacters
- 3.3.1. Regular Expression Syntax
- 3.3.2. Regular Expression Functions
- 3.3.2.1. Finding and extracting values
- 3.3.2.2. Replacing substrings
- 3.3.2.3. Splitting a string into an array
- 3.4. Dates and Times
- 3.4.1. Generating a Timestamp
- 3.4.1.1. Current time
- 3.4.1.2. Creating timestamps with mktime( ) and gmmktime( )
- 3.4.1.3. String to timestamp
- 3.4.1.4. Subsecond times
- 3.4.1. Generating a Timestamp
- 3.4.2. Formatting a Date
- 3.4.3. Validating a Date
- 3.5. Integers and Floats
- 3.5.1. Absolute Value
- 3.5.2. Ceiling and Floor
- 3.5.3. Rounding
- 3.5.4. Number Systems
- 3.5.5. Basic Trigonometry Functions
- 3.5.6. Powers and Logs
- 3.5.7. Testing Number Results
- 3.5.8. Random Number Generation
- 4. Introduction to Object-Oriented Programming with PHP 5
- 4.1. Classes and Objects
- 4.1.1. Member Variables
- 4.1.2. Member Functions
- 4.1.3. Using include Files for Class Definitions
- 4.1.4. Constructors
- 4.1.5. Destructors
- 4.1.6. Private Members Variables
- 4.1.7. Private Member Functions
- 4.1.8. Static Member Variables
- 4.1.9. Static Member Functions
- 4.1.10. Cloning Objects
- 4.1.10.1. Cloning in PHP5
- 4.1.10.2. Cloning in PHP4
- 4.1. Classes and Objects
- 4.2. Inheritance
- 4.2.1. Calling Parent Constructors
- 4.2.2. Redefined Functions
- 4.2.3. Protected Member Variables and Functions
- 4.2.4. Final Functions
- 4.3. Throwing and Catching Exceptions
- 4.3.1. The Exception Class
- 5. SQL and MySQL
- 5.1. Database Basics
- 5.1.1. Introducing Relational Databases
- 5.1.2. Database Terminology
- 5.1.3. The Winestore Database
- 5.1.3.1. The winestore entity-relationship model
- 5.1. Database Basics
- 5.2. MySQL Command Interpreter
- 5.3. Managing Databases and Tables
- 5.3.1. Creating Databases
- 5.3.2. Creating Tables
- 5.3.2.1. Tables and attributes
- 5.3.2.2. Modifiers
- 5.3.2.3. Keys
- 5.3.3. Deleting Databases and Tables
- 5.4. Inserting, Updating, and Deleting Data
- 5.4.1. Inserting Data
- 5.4.1.1. Defaults
- 5.4.1.2. Auto-increment
- 5.4.1. Inserting Data
- 5.4.2. Deleting Data
- 5.4.3. Updating Data
- 5.5. Querying with SQL SELECT
- 5.5.1. Basic Querying
- 5.5.2. WHERE Clauses
- 5.5.3. Sorting and Grouping Output
- 5.5.3.1. ORDER BY
- 5.5.3.2. GROUP BY
- 5.5.3.3. HAVING
- 5.5.3.4. Combining clauses
- 5.5.3.5. DISTINCT
- 5.5.4. Limiting Output in MySQL
- 5.6. Join Queries
- 5.6.1. Beware of the Cartesian Product
- 5.6.2. Elementary Natural Joins
- 5.6.2.1. Examples
- 5.6.2.2. Using DISTINCT in joins
- 5.6.3. Joins with More than Two Tables
- 5.7. Case Study: Adding a New Wine
- 6. Querying Web Databases
- 6.1. Querying a MySQL Database Using PHP
- 6.1.1. Opening and Using a Database Connection
- 6.1.2. Using mysql_fetch_array( )
- 6.1.3. Error Handling of MySQL Database Functions
- 6.1.4. Working with Table Structures
- 6.1.5. Formatting Results
- 6.1.6. Using Require Files in Practice
- 6.1.7. Case Study: Producing a Select List
- 6.1.7.1. Implementing the selectDistinct( ) function
- 6.1. Querying a MySQL Database Using PHP
- 6.2. Processing User Input
- 6.2.1. Passing Data from the Browser to the Server
- 6.2.2. Passing Data with the HTML Form Environment
- 6.2.3. Passing Data with URLs
- 6.2.4. Passing Data with Embedded Links
- 6.2.5. More on Accessing User Data
- 6.2.5.1. Before PHP 4.2
- 6.2.6. Processing Form Data
- 6.2.6.1. The MULTIPLE attribute
- 6.2.6.2. Other form issues
- 6.2.7. Security and User Data
- 6.2.8. Querying with User Input
- 6.2.9. One-Component Querying
- 6.3. MySQL Function Reference
- 6.3.1. Frequently Used Functions
- 6.3.2. Other Functions
- 6.3.3. Functions to Avoid
- 7. PEAR
- 7.1. Overview
- 7.2. Core Components
- 7.2.1. Whats Installed?
- 7.2.1.1. Unix systemsPHP 4.3.0 and later
- 7.2.1.2. Microsoft WindowsPHP 4.3.2 and later
- 7.2.1. Whats Installed?
- 7.2.2. Using PEAR DB
- 7.2.2.1. Should I use PEAR DB?
- 7.2.2.2. Getting started
- 7.2.2.3. Handling errors in PEAR DB
- 7.2.2.4. Essential functions for accessing MySQL with PEAR DB
- 7.3. Packages
- 7.3.1. Installing, Upgrading, and Understanding Packages
- 7.3.1.1. Finding out about packages
- 7.3.1.2. Using the PEAR installer
- 7.3.1. Installing, Upgrading, and Understanding Packages
- 7.3.2. Using HTML Templates
- 7.3.2.1. Working with blocks and placeholders
- 7.3.2.2. Nested blocks
- 7.3.2.3. Preserving and removing blocks
- 7.3.2.4. More on nesting and optional blocks
- 7.3.2.5. Extended Integrated Templates (ITX)
- 7.3.2.6. Essential IT and ITX functions
- 7.3.3. Optional Packages
- 7.3.3.1. Authentication
- 7.3.3.2. Benchmarking
- 7.3.3.3. Caching
- 7.3.3.4. Console
- 7.3.3.5. Database
- 7.3.3.6. Date
- 7.3.3.7. Filesystem
- 7.3.3.8. HTML
- 7.3.3.9. HTTP
- 7.3.3.10. Internationalization
- 7.3.3.11. Logging
- 7.3.3.12. Mail
- 7.3.3.13. Networking
- 7.3.3.14. PEAR
- 7.3.3.15. PHP
- 7.3.3.16. XML
- 7.3.3.17. Web services
- 8. Writing to Web Databases
- 8.1. Database Inserts, Updates, and Deletes
- 8.1.1. Reloading Data and Relocation Techniques
- 8.1.1.1. Solving the reload problem in practice
- 8.1.1. Reloading Data and Relocation Techniques
- 8.1.2. Inserting, Updating, and Deleting Data
- 8.1.2.1. Inserting data
- 8.1.2.2. Updating data
- 8.1.2.3. Case study: updates in practice
- 8.1.2.4. Deleting data
- 8.1. Database Inserts, Updates, and Deletes
- 8.2. Issues in Writing Data to Databases
- 8.2.1. Transactions and Concurrency
- 8.2.2. Locking to Achieve Concurrency in MySQL
- 8.2.2.1. When and how to lock tables
- 8.2.2.2. The LOCK TABLES and UNLOCK TABLES statements in MySQL
- 8.2.2.3. Locking for performance
- 8.2.3. Locking Tables in Web Database Applications
- 8.2.3.1. Locking methods that don't work in web database applications
- 8.2.3.2. Locking with an auxiliary table
- 8.2.3.3. Managing identifiers with PEAR DB
- 9. Validation with PHP and JavaScript
- 9.1. Validation and Error Reporting Principles
- 9.1.1. Models That Don't Work
- 9.1.2. Models That Do Work
- 9.1. Validation and Error Reporting Principles
- 9.2. Server-Side Validation with PHP
- 9.2.1. Mandatory Data
- 9.2.2. Validating Strings
- 9.2.2.1. Basic techniques
- 9.2.2.2. Validating Zip and postcodes
- 9.2.2.3. Validating email addresses
- 9.2.2.4. Validating URLs
- 9.2.2.5. Validating numbers
- 9.2.2.6. Validating credit cards
- 9.2.3. Validating Dates and Times
- 9.2.3.1. Dates
- 9.2.3.2. Times
- 9.2.3.3. Using the PEAR Date package
- 9.2.3.4. Logic, the date function, and MySQL
- 9.3. JavaScript and Client-Side Validation
- 9.3.1. Introducing JavaScript
- 9.3.2. JavaScript and PHP
- 9.3.2.1. Generating output
- 9.3.2.2. Loops and conditionals
- 9.3.2.3. Functions
- 9.3.2.4. Debugging JavaScript
- 9.3.2.5. Objects
- 9.3.2.6. Events
- 9.3.2.7. Methods and properties
- 9.3.3. JavaScript Examples
- 9.3.3.1. A password form validation function
- 9.3.3.2. Rollover presentation with mouseover events
- 9.3.3.3. Prefilling form data with JavaScript calculations
- 9.3.3.4. Interacting with the web browser
- 9.3.3.5. Which browser is the user using?
- 9.3.3.6. Drop-down menus
- 9.3.4. Case Study: A Generic JavaScript Validation Function
- 9.3.4.1. The JavaScript validation script
- 9.3.4.2. Using the JavaScript validation function
- 9.3.4.3. The PHP and template components
- 10. Sessions
- 10.1. Introducing Session Management
- 10.2. PHP Session Management
- 10.2.1. Starting a Session
- 10.2.2. Using Session Variables
- 10.2.2.1. Unsetting session variables
- 10.2.2.2. Session variable types
- 10.2.2.3. Serialization of session variables
- 10.2.3. Ending a Session
- 10.2.4. Designing Session-Based Applications
- 10.2.4.1. Session to track authenticated users
- 10.2.4.2. Sessions to track anonymous users
- 10.3. Case Study: Using Sessions in Validation
- 10.3.1. Improving the Phonebook Details Form
- 10.3.2. The Validation Script
- 10.3.2.1. Improving error messages
- 10.3.2.2. Saving last-entered values as a session variable
- 10.3.2.3. The final validation script
- 10.3.3. The Phonebook Entry Form Script
- 10.3.3.1. Displaying previously entered form values
- 10.3.3.2. Displaying error messages
- 10.3.3.3. The final phonebook entry script
- 10.4. When to Use Sessions
- 10.4.1. Reasons to Use Sessions
- 10.4.1.1. Performance
- 10.4.1.2. Sequence of interaction
- 10.4.1.3. Intermediate results
- 10.4.1.4. Personalization
- 10.4.1. Reasons to Use Sessions
- 10.4.2. Reasons to Avoid Sessions
- 10.4.2.1. Need for centralized session store
- 10.4.2.2. Performance
- 10.4.2.3. Timeouts
- 10.4.2.4. Bookmark restrictions
- 10.4.2.5. Security
- 10.5. PHP Session API and Configuration
- 10.5.1. Functions for Accessing Sessions in PHP
- 10.5.1.1. Functions used when register_globals is enabled
- 10.5.1. Functions for Accessing Sessions in PHP
- 10.5.2. Session Management Without Cookies
- 10.5.2.1. No cookie?
- 10.5.2.2. Including the session ID in URLs
- 10.5.2.3. URL rewriting
- 10.5.2.4. Turning off cookies
- 10.5.3. Garbage Collection
- 10.5.4. Configuration Parameters
- 11. Authentication and Security
- 11.1. HTTP Authentication
- 11.1.1. How HTTP Authentication Works
- 11.1.2. Using Apache to Authenticate
- 11.1. HTTP Authentication
- 11.2. HTTP Authentication with PHP
- 11.2.1. Accessing User Credentials
- 11.2.2. Managing HTTP Authentication with PHP
- 11.2.3. Limiting Access by IP Address
- 11.2.4. Authentication Using a Database
- 11.2.4.1. Creating a database and table
- 11.2.4.2. Protecting passwords
- 11.2.4.3. Authenticating
- 11.2.4.4. Encrypting other data in a database
- 11.3. Form-Based Authentication
- 11.3.1. Reasons to Use HTTP Authentication
- 11.3.2. Reasons to Avoid HTTP Authentication
- 11.3.3. Authentication and Session-Based Applications
- 11.3.3.1. Session hijacking
- 11.3.3.2. Recording IP addresses to detect session hijack attempts
- 11.3.4. Session-Based Authentication Framework
- 11.3.4.1. Code overview
- 11.3.4.2. Login page
- 11.3.4.3. Setup script
- 11.3.4.4. The authentication.inc require file
- 11.3.4.5. Application scripts and pages
- 11.3.4.6. Logout script
- 11.3.4.7. Password management
- 11.4. Protecting Data on the Web
- 11.4.1. The Secure Sockets Layer Protocol
- 11.4.1.1. SSL architecture
- 11.4.1.2. Cipher suites
- 11.4.1.3. SSL sessions
- 11.4.1.4. Certificates and certification authorities
- 11.4.1. The Secure Sockets Layer Protocol
- 12. Errors, Debugging, and Deployment
- 12.1. Errors
- 12.1.1. Accessing the PHP Manual
- 12.1.2. Configuring Error Reporting
- 12.1. Errors
- 12.2. Common Programming Errors
- 12.2.1. A Page That Produces Partial or No Output
- 12.2.2. Variable Problems
- 12.2.2.1. Variable naming
- 12.2.2.2. Missing output
- 12.2.3. Less Common Problems
- 12.2.3.1. Complaints about headers
- 12.2.3.2. Missing semicolons, braces, and quotes
- 12.2.3.3. Source shown in the browser
- 12.3. Custom Error Handlers
- 12.3.1. A Basic Custom Handler
- 12.3.2. A Production Error Handler
- 12.3.2.1. Including debugging information
- 12.3.2.2. Logging and notifying the user
- 12.3.2.3. Triggering your own errors
- 12.3.2.4. Cleaning up the application
- 13. Reporting
- 13.1. Creating a Report
- 13.1.1. Formats
- 13.1.1.1. Portable Document Format (PDF)
- 13.1.1.2. Rich Text Format (RTF)
- 13.1.1.3. PostScript
- 13.1.1.4. HTML and XML
- 13.1.1.5. Email and plain text
- 13.1.1. Formats
- 13.1. Creating a Report
- 13.2. Producing PDF
- 13.2.1. Hello, world
- 13.2.2. A Full-Featured Document
- 13.2.3. A Database Example
- 13.2.4. Creating a Report
- 13.3. PDF-PHP Reference
- 13.3.1. EZPDF Class
- 13.3.2. Base Class
- 14. Advanced Features of Object-Oriented Programming in PHP 5
- 14.1. Working with Class Hierarchies
- 14.1.1. Polymorphism
- 14.1.2. Discovering Relationships
- 14.1.2.1. Functions
- 14.1. Working with Class Hierarchies
- 14.2. Class Type Hints
- 14.3. Abstract Classes and Interfaces
- 14.3.1. The abstract keyword
- 14.3.2. Interfaces
- 14.4. Freight Calculator Example
- 14.4.1. Review of the FreightCalculator
- 14.4.2. Deliverable Interface
- 14.4.3. Improving the FreightCalculator
- 14.4.4. Summary of Improvements
- 14.4.5. Using the Improved Freight Calculator
- 14.4.6. Class Diagram
- 15. Advanced SQL
- 15.1. Exploring with SHOW
- 15.2. Advanced Querying
- 15.2.1. Advanced Join Types
- 15.2.1.1. Natural and inner joins
- 15.2.1.2. Left and right joins
- 15.2.1.3. Unions
- 15.2.1. Advanced Join Types
- 15.2.2. Aliases
- 15.2.3. Nested Queries
- 15.2.3.1. Introduction
- 15.2.3.2. The IN clause
- 15.2.3.3. The EXISTS clause
- 15.2.3.4. Nested queries in the FROM clause
- 15.2.4. User Variables
- 15.2.5. ROLLUP with GROUP BY
- 15.2.6. Other MySQL Topics
- 15.3. Manipulating Data and Databases
- 15.3.1. Altering Databases
- 15.3.2. More on Inserting Data
- 15.3.2.1. Using INSERT with SELECT
- 15.3.2.2. Using CREATE TABLE with SELECT
- 15.3.2.3. Replacing data
- 15.3.2.4. Bulk loading a file into a database
- 15.3.2.5. Delayed insertion
- 15.3.3. More on Deleting Data
- 15.3.4. More on Updating Data
- 15.4. Functions
- 15.4.1. Arithmetic and Comparison Operators
- 15.4.1.1. String functions
- 15.4.1.2. Mathematical functions
- 15.4.1.3. Date and time functions
- 15.4.1.4. Miscellaneous operators and functions
- 15.4.1. Arithmetic and Comparison Operators
- 15.5. Automating Querying
- 15.5.1. Unix
- 15.5.2. Microsoft Windows
- 15.6. Table Types
- 15.6.1. Overview
- 15.6.2. MyISAM
- 15.6.3. InnoDB
- 15.6.3.1. Transactions using COMMIT and ROLLBACK
- 15.6.4. Heap
- 15.7. Backup and Recovery
- 15.7.1. Backup
- 15.7.2. Selective Backups
- 15.7.3. Restore
- 15.7.4. Checking and Fixing Tables
- 15.7.5. Exporting Data to Other Environments
- 15.8. Managing Users and Privileges
- 15.8.1. Creating Users and Privileges
- 15.8.1.1. Privileges and scope
- 15.8.1.2. Network access
- 15.8.1. Creating Users and Privileges
- 15.8.2. Revoking Privileges
- 15.8.2.1. How MySQL manages privileges
- 15.9. Tuning MySQL
- 15.9.1. Index Design
- 15.9.2. Design Tips
- 15.9.3. Server Tuning Tips
- 15.9.4. Query Caching
- 15.9.4.1. Configuring query caching
- 15.9.4.2. Controlling query caching
- 16. Hugh and Dave's Online Wines:A Case Study
- 16.1. Functional and System Requirements
- 16.1.1. Requirements List
- 16.1. Functional and System Requirements
- 16.2. Application Overview
- 16.2.1. Winestore Scripts
- 16.2.1.1. Functional overview
- 16.2.1.2. Using and accessing the source code
- 16.2.1. Winestore Scripts
- 16.3. Common Components
- 16.3.1. Application Templates
- 16.3.2. The winestoreTemplate Class
- 16.3.2.1. How the class works
- 16.3.2.2. The buttons and the button parameter
- 16.3.3. The winestoreFormTemplate Class
- 16.3.3.1. How the class works
- 16.3.4. Database Parameters
- 16.3.5. Validation
- 16.3.6. Custom Error Handler
- 16.3.7. General-Purpose Functions
- 17. Managing Customers
- 17.1. Code Overview
- 17.2. Customer Validation
- 17.3. The Customer Form
- 17.3.1. The Customer Receipt Page
- 18. The Shopping Cart
- 18.1. Code Overview
- 18.2. The Winestore Home Page
- 18.3. The Shopping Cart Implementation
- 18.3.1. Viewing the Shopping Cart
- 18.3.2. Adding Items to the Shopping Cart
- 18.3.3. Emptying the Shopping Cart
- 18.3.4. Updating the Shopping Cart Quantities
- 19. Ordering and Shipping at the Online Winestore
- 19.1. Code Overview
- 19.2. Credit Card and Shipping Instructions
- 19.3. Finalizing Orders
- 19.4. HTML and Email Receipts
- 19.4.1. Email Receipt
- 19.4.1.1. The PEAR Mail package
- 19.4.1. Email Receipt
- 19.4.2. HTML Receipts
- 20. Searching and Authentication in the Online Winestore
- 20.1. Code Overview
- 20.1.1. Searching and Browsing
- 20.1.2. Authentication
- 20.1. Code Overview
- 20.2. Searching and Browsing
- 20.2.1. Search Criteria Form
- 20.2.2. Querying and Displaying Results
- 20.2.2.1. Finding the wines
- 20.2.2.2. Displaying the wines
- 20.3. Authentication
- 20.3.1. General-Purpose Functions
- 20.3.2. Logging In and Out
- 20.3.3. Changing Passwords
- A. Linux Installation Guide
- A.1. Finding Out What's Installed
- A.1.1. MySQL
- A.1.2. Apache and PHP
- A.1. Finding Out What's Installed
- A.2. Installation Overview
- A.3. Installing MySQL
- A.3.1. Starting MySQL
- A.3.2. Configuring MySQL
- A.4. Installing Apache
- A.4.1. Installing a Secure Apache Server
- A.4.1.1. Installing OpenSSL
- A.4.1.2. Creating a key and a certificate
- A.4.1. Installing a Secure Apache Server
- A.4.2. Installing a Regular Apache Server
- A.5. Installing PHP
- A.6. What's Needed for This Book
- A.6.1. Installing PEAR Packages
- A.6.2. Installing the Code Examples
- A.6.3. Installing the PDF PHP Library
- A.6.4. Loading the Winestore Database
- A.6.5. Installing the Winestore Application
- B. Microsoft Windows Installation Guide
- B.1. Installation Overview
- B.2. Installing with EasyPHP
- B.3. What's Needed for This Book
- B.3.1. Installing PEAR Packages
- B.3.2. Installing the Code Examples
- B.3.3. Installing the PDF PHP Library
- B.3.4. Loading the Winestore Database
- B.3.5. Installing the Winestore Application
- C. Mac OS X Installation Guide
- C.1. Getting Started
- C.2. Installing MySQL
- C.2.1. Configuring MySQL
- C.3. Setting Up Apache and PHP
- C.3.1. Starting Apache
- C.3.2. The Apache and PHP Setup
- C.3.3. Upgrading PHP
- C.3.4. Installing a Secure Apache Server
- C.3.4.1. Creating a key and certificate
- C.4. What's Needed for This Book
- C.4.1. Installing PEAR Packages
- C.4.2. Installing the Code Examples
- C.4.3. Installing the PDF PHP Library
- C.4.4. Loading the Winestore Database
- C.4.5. Installing the Winestore Application
- D. Web Protocols
- D.1. Network Basics
- D.1.1. TCP/IP
- D.1.2. IP Addresses
- D.1.2.1. Ports
- D.1. Network Basics
- D.2. Hypertext Transfer Protocol
- D.2.1. Uniform Resource Locators
- D.2.1.1. Protocol
- D.2.1.2. Host and service identification
- D.2.1.3. Nonstandard TCP ports
- D.2.1.4. Resource identification
- D.2.1.5. Parameters and queries
- D.2.1.6. Fragment identifiers
- D.2.1.7. Absolute and relative URLs
- D.2.1.8. URL encoding
- D.2.1. Uniform Resource Locators
- D.2.2. HTTP Requests
- D.2.2.1. Request methods
- D.2.2.2. GET versus POST
- D.2.3. HTTP Responses
- D.2.3.1. Status codes
- D.2.4. Caching
- E. Modeling and Designing Relational Databases
- E.1. The Relational Model
- E.1.1. Case Study: Relationships in the Winestore
- E.1. The Relational Model
- E.2. Entity-Relationship Modeling
- E.2.1. Case Study: Modeling the Online Winestore
- E.2.1.1. Identifying entities in ER modeling
- E.2.1.2. Identifying relationships in ER modeling
- E.2.1.3. Relationships in the winestore ER model
- E.2.1.4. Identifying key attributes in ER modeling
- E.2.1.5. Other ER modeling tools
- E.2.1.6. Completing the ER model
- E.2.1. Case Study: Modeling the Online Winestore
- E.2.2. Converting an Entity-Relationship Model to SQL
- E.2.2.1. Step 1: Convert regular entities to tables
- E.2.2.2. Step 2: Convert weak entities to tables
- E.2.2.3. Step 3: One-to-one relationships
- E.2.2.4. Step 4: One-to-many relationships
- E.2.2.5. Step 5: Many-to-many relationships
- F. Managing Sessions in theDatabase Tier
- F.1. Using a Database to Keep State
- F.2. PHP Session Management
- F.2.1. PHP Session Management Storage Methods
- F.2.2. Building User-Defined Storage Handlers
- F.3. MySQL Session Store
- F.3.1. Session Table Structure
- F.3.2. Handler Implementations
- F.3.2.1. Support functions
- F.3.2.2. Session open handler
- F.3.2.3. Session read handler
- F.3.2.4. Session write handler
- F.3.2.5. Session close handler
- F.3.2.6. Session destroy handler
- F.3.2.7. Garbage collection handler
- F.3.2.8. Registering session handlers
- F.3.3. Using the User-Defined Session Handler Code
- F.3.4. PEAR's HTTP_Session Package
- G. Resources
- G.1. Client Tier Resources
- G.2. Middle-Tier Resources
- G.2.1. Web Server and Web Technology Resources
- G.2.2. Networking and Web Resources
- G.2.3. PHP resources
- G.3. Database Tier Resources
- G.4. Security and Cryptography Resources
- H. The Improved MySQL Library
- H.1. New Features
- H.2. Getting Started
- H.2.1. Installing the Library
- H.2.2. Migrating to the New Library
- H.3. Using the New Features
- H.3.1. Basic Features
- H.3.2. Preparing and Executing Queries
- H.3.2.1. Inserting data
- H.3.2.2. Retrieving data
- H.3.3. Profiling Queries
- Index
- About the Authors
- Colophon
- SPECIAL OFFER: Upgrade this ebook with OReilly
O'Reilly Media - inne książki
-
Keeping up with the Python ecosystem can be daunting. Its developer tooling doesn't provide the out-of-the-box experience native to languages like Rust and Go. When it comes to long-term project maintenance or collaborating with others, every Python project faces the same problem: how to build re...(203.15 zł najniższa cena z 30 dni)
207.64 zł
239.00 zł(-13%) -
Bringing a deep-learning project into production at scale is quite challenging. To successfully scale your project, a foundational understanding of full stack deep learning, including the knowledge that lies at the intersection of hardware, software, data, and algorithms, is required.This book il...(237.15 zł najniższa cena z 30 dni)
249.75 zł
289.00 zł(-14%) -
Frontend developers have to consider many things: browser compatibility, usability, performance, scalability, SEO, and other best practices. But the most fundamental aspect of creating websites is one that often falls short: accessibility. Accessibility is the cornerstone of any website, and if a...(194.65 zł najniższa cena z 30 dni)
207.20 zł
239.00 zł(-13%) -
In this insightful and comprehensive guide, Addy Osmani shares more than a decade of experience working on the Chrome team at Google, uncovering secrets to engineering effectiveness, efficiency, and team success. Engineers and engineering leaders looking to scale their effectiveness and drive tra...(118.15 zł najniższa cena z 30 dni)
121.29 zł
149.00 zł(-19%) -
Data modeling is the single most overlooked feature in Power BI Desktop, yet it's what sets Power BI apart from other tools on the market. This practical book serves as your fast-forward button for data modeling with Power BI, Analysis Services tabular, and SQL databases. It serves as a starting ...(194.65 zł najniższa cena z 30 dni)
206.44 zł
239.00 zł(-14%) -
C# is undeniably one of the most versatile programming languages available to engineers today. With this comprehensive guide, you'll learn just how powerful the combination of C# and .NET can be. Author Ian Griffiths guides you through C# 12.0 and .NET 8 fundamentals and techniques for building c...(228.65 zł najniższa cena z 30 dni)
249.84 zł
289.00 zł(-14%) -
Learn how to get started with Futures Thinking. With this practical guide, Phil Balagtas, founder of the Design Futures Initiative and the global Speculative Futures network, shows you how designers and futurists have made futures work at companies such as Atari, IBM, Apple, Disney, Autodesk, Luf...(152.15 zł najniższa cena z 30 dni)
155.30 zł
179.00 zł(-13%) -
Augmented Analytics isn't just another book on data and analytics; it's a holistic resource for reimagining the way your entire organization interacts with information to become insight-driven.Moving beyond traditional, limited ways of making sense of data, Augmented Analytics provides a dynamic,...(181.25 zł najniższa cena z 30 dni)
181.15 zł
219.00 zł(-17%) -
Learn how to prepare for—and pass—the Kubernetes and Cloud Native Associate (KCNA) certification exam. This practical guide serves as both a study guide and point of entry for practitioners looking to explore and adopt cloud native technologies. Adrián González Sánchez ...
Kubernetes and Cloud Native Associate (KCNA) Study Guide Kubernetes and Cloud Native Associate (KCNA) Study Guide
(169.14 zł najniższa cena z 30 dni)177.65 zł
209.00 zł(-15%) -
Python is an excellent way to get started in programming, and this clear, concise guide walks you through Python a step at a time—beginning with basic programming concepts before moving on to functions, data structures, and object-oriented design. This revised third edition reflects the gro...(148.67 zł najniższa cena z 30 dni)
148.56 zł
179.00 zł(-17%)
Dzieki opcji "Druk na żądanie" do sprzedaży wracają tytuły Grupy Helion, które cieszyły sie dużym zainteresowaniem, a których nakład został wyprzedany.
Dla naszych Czytelników wydrukowaliśmy dodatkową pulę egzemplarzy w technice druku cyfrowego.
Co powinieneś wiedzieć o usłudze "Druk na żądanie":
- usługa obejmuje tylko widoczną poniżej listę tytułów, którą na bieżąco aktualizujemy;
- cena książki może być wyższa od początkowej ceny detalicznej, co jest spowodowane kosztami druku cyfrowego (wyższymi niż koszty tradycyjnego druku offsetowego). Obowiązująca cena jest zawsze podawana na stronie WWW książki;
- zawartość książki wraz z dodatkami (płyta CD, DVD) odpowiada jej pierwotnemu wydaniu i jest w pełni komplementarna;
- usługa nie obejmuje książek w kolorze.
Masz pytanie o konkretny tytuł? Napisz do nas: sklep[at]helion.pl.
Książka, którą chcesz zamówić pochodzi z końcówki nakładu. Oznacza to, że mogą się pojawić drobne defekty (otarcia, rysy, zagięcia).
Co powinieneś wiedzieć o usłudze "Końcówka nakładu":
- usługa obejmuje tylko książki oznaczone tagiem "Końcówka nakładu";
- wady o których mowa powyżej nie podlegają reklamacji;
Masz pytanie o konkretny tytuł? Napisz do nas: sklep[at]helion.pl.
Książka drukowana
Oceny i opinie klientów: Web Database Applications with PHP and MySQL. 2nd Edition Hugh E. Williams, David Lane (0) Weryfikacja opinii następuję na podstawie historii zamówień na koncie Użytkownika umieszczającego opinię. Użytkownik mógł otrzymać punkty za opublikowanie opinii uprawniające do uzyskania rabatu w ramach Programu Punktowego.