
Symfony 1.3 Web Application Development
Description
Alles über E-Books | Antworten auf Fragen rund um E-Books, Kopierschutz und Dateiformate finden Sie in unserem Info- & Hilfebereich.
- Covers all the new features of version 1.3 ñ many exciting plug-ins for you
- Learn by doing without getting into too much theoretical detail ñ create a "real-life" milkshake store application
- Includes best practices to shorten your development time and improve performance
Book DescriptionWith its flexible architecture, the Symfony framework allows you to build modern web applications and web services easily and rapidly. The MVC components separate the logic from the user interface and therefore make developing, changing, and testing your applications much faster. Using Symfony you can minimize repetitive coding tasks, optimize performance, and easily integrate with other libraries and frameworks. Although this framework contains with many powerful features, most developers do not exploit Symfony to its full potential. This book makes it easy to get started and produce a powerful and professional-looking web site utilizing the many features of Symfony. Taking you through a real-life application, it covers all major Symfony framework features without pushing you into too much theoretical detail, as well as throwing some light on the best practices for rapid application development. This book takes you through detailed examples as well as covering the foundations that you will need to get the most out of the Symfony framework. You will learn to shorten the development time of your complex applications and maintain them with ease. You will create several useful plug-ins and add them to your application and automate common tasks. The book also covers best practices and discussions on security and optimization. You will learn to utilize all major features of this framework by implementing them in your application. By the end, you should have a good understanding of the development features of Symfony (for Propel as well as Doctrine editions), and be able to deploy a high-performance web site quite easily.What you will learn - Set up the foundations for a database-driven web site using Symfony
- Create a list of products by accessing data from a database, paginate the menu, and then customize its look
- Create formsófrom simple contact forms to complex onesówith user-defined fields using sfFormExtraPlugin
- Send email notifications to the customers using PHP SwiftMailer library
- Create quick development task plug-ins to save your development time and package them into your application
- Configure and customize Symfony s admin generator to create a nice looking back-office
- Secure your backend application with the Symfony authentication mechanism, leveraging the power of the sfGuardPlug-in security and authentication plug-in
- Create an advanced admin panel with JavaScript that allows image files to be uploaded and thumbnails to be automatically generated
- Enhance your search mechanism by using the JQueryAutoComplete Widget to add an auto-complete feature to it
- Allow your users to choose their preferred language for display by introducing internationalization and localization to your application
- Integrate a component from another framework into your application with minimum effort
- Optimize the response time of your site by using compression and caching
Who this book is forThis book is for PHP web developers who want to get started with Symfony 1.3. If you are already using Symfony 1.0 or are new to Symfony, you will learn how to use it in the best way to produce better applications faster.Basic knowledge of Object Oriented design and ORM will be quite helpful.
All prices
More details
Other editions
Additional editions

Content
- Intro
- Symfony 1.3 Web Application Development
- Table of Contents
- Symfony 1.3 Web Application Development
- Credits
- About the Authors
- About the Reviewer
- Preface
- What this book covers
- What you need for this book
- Who this book is for
- Conventions
- Reader feedback
- Customer support
- Downloading the example code for the book
- Errata
- Piracy
- Questions
- 1. Getting Started with Symfony
- Exploring Symfony
- The framework
- The Model-View-Controller pattern
- Controller
- Model
- Views
- Taking a look at the key features
- Forms and validation
- Plugins
- Internationalization and localization
- Generators
- Cache
- Testing
- Configuration files
- Coding guidelines
- Symfony-specific guidelines
- Installing Symfony
- Summary
- 2. Developing Our Application
- The milkshake shop
- Creating the skeleton folder structure
- Creating our database schema
- Configuring the ORM layer
- Configuring the database connection
- Using another database engine
- Generating the models, forms, and filters
- Building the database
- Creating the application modules
- Handling the routing
- The application logic
- Rendering the template
- Adding our routing rules
- Configuring template parameters
- Styling the pages
- Common installation problems
- Web server 404 error page
- A symfony 'Oop! An error occurred'
- Pages and debug bar do not render correctly
- Summary
- 3. Adding the Business Logic and Complex Application Logic
- The generated models
- Populating the database
- Retrieving data using the models
- Defining the criteria
- Hydration
- Retrieving the result set from the action
- The template logic
- Returned results
- Using the DAOs
- Displaying the results
- Helpers
- Paginating our menu
- Adding the pager business logic
- Setting a configuration option
- Amending the action
- Accessing the $_POST, $_GET, and $_REQUEST variables
- Accessing the application and module configuration file
- Building up the routing
- Organizing a template with partials
- Creating the milkshake page
- Routing with an object
- Adding the route to the template
- Retrieving many-to-many results
- Accessing related objects in the action
- Accessing related objects in the templates
- Plugins
- DbFinderPlugin
- Finishing off the location page
- Summary
- 4. User Interaction and Email Automation
- The signup module
- Binding a form to a database table
- A look at the generated base class
- Rendering the form
- Customizing form widgets and validators
- Removing unneeded fields
- Modifying the form widgets
- Adding form validators
- Form naming convention and setting its style
- Submitting the form
- Changing the global rendering of forms
- Customizing the rendering of the form
- Form security for the user
- Creating a simple form
- Automated email responses
- Adding the mailer settings to the application
- Creating the application logic
- The partial email template
- Flashing temporary values
- Creating a plugin
- Packaging a plugin
- Summary
- 5. Generating the Admin Area
- How Symfony can help us
- Initializing generator
- Creating application and module
- Exploring list view
- Looking into the generated list view code
- Customizing the admin generator
- Customizing the edit view
- Handling foreign keys using admin generator
- Accessing application settings from generator.yml
- Using partials in the generated views
- Customizing the layout
- Securing the application
- Setting up credentials (permissions)
- Handling credentials in templates
- Tidying up the backend
- Summary
- 6. Advanced Forms and JavaScript
- Adding JavaScript code into the Symfony project
- JavaScript frameworks
- Using JavaScript helpers
- Adding JavaScript files into the header section
- Creating more advanced admin modules
- Installing the required plugins and libraries
- Creating an advanced admin module
- Adding file upload and thumbnails
- Handling many-to-many relations
- Adding jQuery calendar and TinyMCE widget
- Autocompleting the search
- Other JavaScript helpers
- Summary
- 7. Internationalizing our Global Positions
- Internationalization and localization
- Refactoring the schema
- Rebuilding with test data
- Setting and getting the culture and language
- Preferred culture and language
- The action
- Adding culture to the routing
- Localizing the template
- Translating interface text
- Configuring i18n for the templates
- Dictionary files
- Translating the interface
- Adding the culture links
- Translating the static text
- Summary
- 8. Extending Symfony
- Bridging to other frameworks
- Bridging with eZ Components
- Configuring the component with Symfony
- Using the component
- Bridging with the Zend Framework
- Extending the core classes with your own
- Multiple inheritance
- Summary
- 9. Optimizing for Performance
- HTTP compression
- Caching
- Cache settings
- Caching globally
- Caching page-by-page
- Caching without the layout
- Caching with the layout
- Caching parts of a template
- Dynamic cache
- Cache storage
- Caching dynamic pages
- Looking at the database
- Setting limits and columns in the criteria
- Creating your own SQL statements
- Limit your queries
- Caching your queries
- ETags
- Less requests
- Stylesheets
- JavaScripts
- Other tools to aid you
- Firefox developer tools
- Database tools
- Deciding on your table types
- Accelerators
- memcached
- Caching database calls
- Summary
- 10. Final Tweaks and Deployment
- Editing the default pages
- Disabling the application
- Symfony on the server or not?
- Transferring your application to the server
- rsync
- Symfony and rsync
- Summary
- Index
System requirements
File format: ePUB
Copy protection: Adobe-DRM (Digital Rights Management)
System requirements:
- Computer (Windows; MacOS X; Linux): Install the free reader Adobe Digital Editions prior to download (see eBook Help).
- Tablet/smartphone (Android; iOS): Install the free app Adobe Digital Editions or the app PocketBook before downloading (see eBook Help).
- E-reader: Bookeen, Kobo, Pocketbook, Sony, Tolino and many more (not Kindle).
The file format ePub works well for novels and non-fiction books – i.e., „flowing” text without complex layout. On an e-reader or smartphone, line and page breaks automatically adjust to fit the small displays.
This eBook uses Adobe-DRM, a „hard” copy protection. If the necessary requirements are not met, unfortunately you will not be able to open the eBook. You will therefore need to prepare your reading hardware before downloading.
Please note: We strongly recommend that you authorise using your personal Adobe ID after installation of any reading software.
For more information, see our ebook Help page.
File format: PDF
Copy-Protection: Adobe-DRM (Digital Rights Management)
System requirements:
- Computer (Windows; MacOS X; Linux): Install the free reader Adobe Digital Editions prior to download (see eBook Help).
- Tablet/smartphone (Android; iOS): Install the free app Adobe Digital Editions or the app PocketBook before downloading (see eBook Help).
- E-reader: Bookeen, Kobo, Pocketbook, Sony, Tolino and many more (only limited: Kindle).
The file format PDF always displays a book page identically on any hardware. This makes PDF suitable for complex layouts such as those used in textbooks and reference books (images, tables, columns, footnotes). Unfortunately, on the small screens of e-readers or smartphones, PDFs are rather annoying, requiring too much scrolling.
This eBook uses Adobe-DRM, a „hard” copy protection. If the necessary requirements are not met, unfortunately you will not be able to open the eBook. You will therefore need to prepare your reading hardware before downloading.
Please note: We strongly recommend that you authorise using your personal Adobe ID after installation of any reading software.
For more information, see our eBook Help page.