Synopses & Reviews
Access and run Windows web and database technologies with PHP
Take your PHP programming skills deep into Windows—and build PHP applications that run efficiently and effectively on an array of Windows technologies. Packed with hands-on exercises, this in-depth guide shows you how to use PHP to interact with Internet Information Services 7.5 (IIS), Microsoft SQL Server 2008, Microsoft Exchange Server 2010, and Active Directory. You’ll quickly learn how to apply best practices for running PHP applications in a Windows environment.
Discover how to:
- Use Microsoft SQL Server as the backend database for PHP applications
- Set up full-text search on SQL Server to help users find data quickly
- Improve PHP application performance with IIS caching techniques
- Configure IIS to help secure your PHP applications against attacks
- Manage users and groups in Active Directory with a PHP application
- Create a PHP LDAP browser to search for and view Active Directory data
- Program Exchange Server with PHP, using Exchange Web Services (EWS)
Take your PHP programming skills deep into Windows—and build PHP applications that run efficiently and effectively with an array of Windows technologies. Packed with practical step-by-step exercises, this in-depth guide teaches you how to use PHP modules and functions to interact with applications such as Internet Information Services (IIS), Microsoft® Exchange Server, Microsoft SQL Server®, and Active Directory®.
Discover how to:
- Apply best practices for running PHP applications in a Windows environment
- Install and set up PHP to run on Internet Information Services (IIS)
- Use Microsoft SQL Server as the backend relational database for PHP applications
- Develop PHP applications to interact with Active Directory
- Connect Microsoft Exchange Server and web services with PHP
About the Author
Arno Hollosi works as coordinator in the University Department for Information Technologies and Business Informatics at CAMPUS 02, Graz, Austria. After studying telematics, he worked at the Institute for Applied Data Processing, where he focused on cryptography, PKI, and XML. Later, he worked as the technical lead of a special task force at the Federal Chancellery of the Republic of Austria, where he was responsible for the IT strategy, and later as a systems architect and quality manager for Siemens international projects.
Table of Contents
Introduction; Who Should Read This Book; Who Should Not Read This Book; Organization of This Book; Conventions and Features in This Book; System Requirements; Code Samples; Acknowledgments; Errata & Book Support; We Want to Hear from You; Stay in Touch; Contacting the Author; Internet Information Services (IIS); Chapter 1: Setting Up the Work Environment; 1.1 Setting Up IIS; 1.2 Setting Up PHP; 1.3 Configuring PHP in IIS; 1.4 Installing by Using the Web Platform Installer; 1.5 Backing Up Your Configuration; 1.6 A First Sample Application; 1.7 Remote Access; 1.8 Summary; Chapter 2: IIS Architecture; 2.1 Sites; 2.2 Applications; 2.3 Virtual Directories; 2.4 HTTP Request Flow; 2.5 Modules; 2.6 Application Pools; 2.7 FastCGI; 2.8 Summary; Chapter 3: Configuring IIS; 3.1 Configuration Files; 3.2 Configuration Structure; 3.3 Schema and configSections; 3.4 Configuring Paths by Using location; 3.5 Sites, Applications, and Directories; 3.6 Locking the Configuration; 3.7 Summary; Chapter 4: Configuring PHP; 4.1 Installing PHP Manager; 4.2 Configuring PHP; 4.3 Specifying the Default Document; 4.4 Request Limits; 4.5 Time Limits for Request Processing; 4.6 Session Storage and Temporary Files; 4.7 Setting Up PHP Syntax Highlighting; 4.8 Setting Up Different PHP Versions; 4.9 Setting Up Different PHP Configurations; 4.10 Summary; Chapter 5: Security; 5.1 Structuring the Application; 5.2 PHP Configuration; 5.3 User Authentication; 5.4 Identity and Access Rights; 5.5 Authorization Rules; 5.6 Request Filter; 5.7 Encrypted Connections (HTTPS); 5.8 Summary; Chapter 6: Caching; 6.1 Caching in the Web; 6.2 Output Cache; 6.3 The WinCache Extension for PHP; 6.4 Summary; Chapter 7: URL Rewrite; 7.1 Setting Up URL Rewrite; 7.2 Predefined Variables; 7.3 Evaluating Rules; 7.4 Setting Up Rules; 7.5 Rewrite Maps; 7.6 Rules in Detail; 7.7 XML Configuration; 7.8 Examples; 7.9 Converting from Apache mod_rewrite; 7.10 Summary; Chapter 8: Error Messages and Error Search; 8.1 Detailed Error Messages; 8.2 Tracing; 8.3 PHP Error Messages; 8.4 Determining the Causes of Server Problems; 8.5 Summary; SQL Server; Chapter 9: Setting Up SQL Server; 9.1 Installing SQL Server; 9.2 SQL Server Tools; 9.3 Configuring for Remote Access; 9.4 Installing the Sample Database; 9.5 Migrating MySQL Databases; 9.6 Summary; Chapter 10: Databases and Tables; 10.1 Databases; 10.2 Data Types; 10.3 Schemas and Object Names; 10.4 Tables; 10.5 Keys and Indexes; 10.6 Summary; Chapter 11: Working with SQL Server; 11.1 Querying Data (SELECT); 11.2 Manipulating Data; 11.3 Querying Metadata; 11.4 Summary; Chapter 12: PHP and SQL Server; 12.1 Approach and Process; 12.2 Database Connections; 12.3 Database Queries; 12.4 Data Types; 12.5 Summary; Chapter 13: Advanced Database Functions; 13.1 Full-Text Search; 13.2 Transactions; 13.3 Stored Procedures; 13.4 Custom Functions; 13.5 Triggers; 13.6 Summary; Chapter 14: Users and Permissions; 14.1 SQL Server Principals; 14.2 Creating SQL Server Principals; 14.3 Objects and Permissions; 14.4 Stored Procedures; 14.5 Summary; Active Directory; Chapter 15: Setting Up Active Directory; 15.1 Overview; 15.2 Installing Active Directory; 15.3 First Steps; 15.4 Setting Up Active Directory Certificate Services; 15.5 Working with Certificates; 15.6 Summary; Chapter 16: LDAP Basics; 16.1 LDAP Basics; 16.2 Utilities; 16.3 Configuring the PHP LDAP Extension; 16.4 Authenticating Users; 16.5 Querying Entries; 16.6 Summary; Chapter 17: Searching in Active Directory; 17.1 The PHP LDAP Browser; 17.2 The Directory Information Tree and Naming Contexts; 17.3 Active Directory Schema; 17.4 Domain Objects; 17.5 Concrete Search Examples; 17.6 Summary; Chapter 18: Writing in Active Directory; 18.1 Preparation; 18.2 Writing Attributes; 18.3 Practical Examples for Changing Attributes; 18.4 Writing Entries; 18.5 Practical Examples; 18.6 Summary; Exchange Server; Chapter 19: Setting Up Exchange Server; 19.1 Setting Up Required Services and Features; 19.2 Installing Exchange Server; 19.3 Configuration After the Installation; 19.4 Creating a Mailbox; 19.5 Summary; Chapter 20: Exchange Web Services; 20.1 Required PHP Extensions; 20.2 Autodiscover; 20.3 SOAP and WSDL; 20.4 SOAP Messages; 20.5 Information About the Following Chapters; 20.6 Summary; Chapter 21: Email and Exchange Web Services Basics; 21.1 Structure, IDs, and Views; 21.2 Finding Folders (FindFolder); 21.3 Listing Messages (FindItem);;;;;; 21.4 Viewing a Message (GetItem); 21.5 Requesting the Original MIME Content; 21.6 Sending a Message (CreateItem); 21.7 Deleting Messages (DeleteItem); 21.8 Summary; Chapter 22: Contacts and Search; 22.1 Properties of Contacts; 22.2 Changing a Contact (UpdateItem); 22.3 Finding Certain Properties; 22.4 Defining the Search in a Request; 22.5 Summary; Chapter 23: Calendar and Impersonation; 23.1 Calendar Entries; 23.2 Creating a Common Calendar Entry; 23.3 Meetings; 23.4 Appointment Conflicts; 23.5 Searching the Calendar; 23.6 Impersonation; 23.7 Additional Steps; 23.8 Summary; Example Scripts and Data; The HTMLPage Class; The HTML Template; The DatabaseConnection Class; Example Database: AdventureWorksLT2008; About the Author;