Cover image for CodeIgniter 1.7 Professional Development.
CodeIgniter 1.7 Professional Development.
Title:
CodeIgniter 1.7 Professional Development.
Author:
Griffiths, Adam.
ISBN:
9781849510912
Personal Author:
Edition:
1st ed.
Physical Description:
1 online resource (330 pages)
Contents:
CodeIgniter 1.7 Professional Development -- Table of Contents -- CodeIgniter 1.7 Professional Development -- Credits -- About the Author -- About the Reviewers -- Preface -- What this book covers -- Who this book is for -- Conventions -- Reader feedback -- Customer support -- Errata -- Piracy -- Questions -- 1. Getting Started with CodeIgniter -- Upgrading from older versions of CodeIgniter -- Downloading and installing CodeIgniter -- Getting the CodeIgniter files -- Introducing Model View Controller (MVC) -- Controllers: The business logic -- Defining a default Controller -- Remapping function calls -- Models: Data abstraction layer -- Loading a Model -- Connecting to your database automatically -- Views: Your template files -- Loading a view -- Loading multiple views -- Adding dynamic data -- Creating loops -- Returning views as data -- Autoloading resources -- Formatting your code-PHP Style Guide -- PHP closing tag -- Incorrect -- Correct -- Class and method naming -- Incorrect -- Correct -- Incorrect -- Correct -- Variable names -- Incorrect -- Correct -- Commenting -- Poor -- Good -- Use of TRUE, FALSE, and NULL -- Incorrect -- Correct -- Short opening tags -- Incorrect -- Correct -- One statement per line -- Incorrect -- Correct -- CodeIgniter URLs -- Removing the index.php file -- Adding a URL Suffix -- CodeIgniter specific files -- Helpers -- Loading a helper -- Loading multiple helpers -- Using a helper -- "Extending" Helpers -- Plugins -- Loading a plugin -- Loading multiple plugins -- Using a plugin -- Libraries -- Creating your own libraries -- Using CodeIgniter resources within your library -- Using your class -- Extending core libraries -- Loading your extended library -- Replacing core libraries -- Summary -- 2. Learning the Libraries -- What is a library? -- What do libraries do? -- Benchmarking Class -- Setting a benchmark.

Setting multiple benchmarks -- Profiling your benchmarks -- Making use of the Profiler Class -- Display total execution time -- Display memory consumption -- Input and Security Class -- XSS filtering -- Filtering a single item -- Automatic filtering -- Filtering images -- Retrieving POST data -- Retrieving GET data -- Retrieving GET and POST data -- Retrieving COOKIE data -- Retrieving SERVER data -- IP Addresses -- Retrieving a user agent -- Email Class -- Send an e-mail -- Build a contact form -- Our contact form -- Checking if the form has been submitted -- Checking the values of the form -- Validate the e-mail -- Using the XSS filter -- Send the e-mail -- Using the Email Class -- Using the Email Helper -- Batch e-mail processing -- File Uploading Class -- Create the Upload Views -- Create the Upload Controller -- Our initial controller -- Specify the allowed file types and maximum file size -- Uploading the file -- Image Manipulation Library -- Initializing the library -- Creating a thumbnail -- Cropping an image -- Rotating an image -- Clearing values in loops -- Pagination Class -- Example -- Customizing the pagination -- Customize the "First" link -- Customize the "Last" link -- Customize the "Next" link -- Customize the "Previous" link -- Customize the "Current Page" link -- Customize the "Digit" link -- Session Class -- Initializing the Session Class -- Autoload the Session Class -- Manually load the Session Class -- How do CodeIgniter sessions work? -- What is stored in a session? -- Adding session data -- Retrieving session data -- Removing session data -- Removing a single session item -- Removing multiple session items -- Destroying a session -- Flash data -- Add flashdata -- Read flashdata -- Keep flashdata -- Using a session database -- Unit testing a class -- Initializing the class -- Running tests -- Generating reports -- Strict mode.

Enabling or disabling unit testing -- Create a template -- Summary -- 3. Form Validation and Database Interaction -- Why should I validate my forms? -- Using the Form Validation Library -- The form validation process -- The user's process -- The development process -- Contact form -- Loading the assets -- Setting the rules -- List of validation rules -- Prepping data -- The rules -- Check the validation process -- Sending the email -- Final controller code -- Changes to the form view -- Re-populating field values -- Showing individual errors -- Final form view -- Changing the error delimiters -- Changing delimiters globally -- Changing delimiters individually -- Saving sets of validation rules to a config file -- Creating sets of rules -- Calling a specific set of rules -- Associating a rule group with a controller -- Using callbacks -- Include the callback in the rules -- Creating the callback -- Create the function -- Load the database library -- Performing the database query -- Adding a condition -- Show a success page -- Database interaction -- Loading the library -- Performing simple queries -- Returning values -- Returning a result object -- Returning a result array -- Returning a row object -- Returning a row array -- Result helper functions -- Number of rows returned -- Number of fields returned -- Free result -- Active Record -- Selecting data -- this->db->get() -- -- this->db->get_where() -- -- this->db->select() -- -- this->db->from() -- -- this->db->join() -- -- this->db->where() -- -- Single key or value method -- Multiple key or value method -- Custom key or value method -- Associative array method -- Custom string -- this->db->like() -- -- Single key or value method -- Multiple key or value method -- Associative array method -- this->db->group_by() -- -- this->db->order_by() -- -- this->db->limit().

Inserting data -- this->db->insert() -- -- this->db->set() -- -- Updating data -- this->db->update() -- -- Deleting data -- this->db->delete() -- -- this->db->empty_table() -- -- this->db->truncate() -- -- Active Record caching -- this->db->start_cache() -- -- this->db->stop_cache() -- -- this->db->flush_cache() -- -- Method chaining -- Manipulating databases with Database Forge -- Loading the Forge class -- Creating a database -- Dropping a database -- Adding fields -- Creating a table -- Dropping a table -- Renaming a table -- Modifying a table -- this->dbforge->add_column() -- -- this->dbforge->drop_column() -- -- this->dbforge->modify_column() -- -- Summary -- 4. User Authentication 1 -- Defining our goals -- Our goals -- Creating and connecting to the database -- Front end code -- Index function -- Details view -- Dashboard function -- Dashboard view -- Login function -- Form validation -- Password check -- Running the validation -- Full login code -- Login view -- Success view -- Register function -- Form validation -- User exists check -- Email exists check -- Running the validation -- Full register code -- Full controller code -- Register view -- Error view -- Logout function -- Logout view -- Model code -- Model constructor -- Create function -- Login function -- Logged in check function -- Full model code -- Addressing some issues -- The Authentication Library -- Summary -- 5. User Authentication 2 -- Using Twitter oAuth -- How oAuth works -- Registering a Twitter application -- Downloading the oAuth library -- Library base class -- Controller base class -- Library constructor -- Requesting user tokens -- HTTP function -- Parse function -- Controller index function -- get_authorize_URL function -- Main view file -- Change your callback URL -- Creating the access function -- The view file -- Getting access tokens.

get_access_tokens() -- parse_access() -- Logging out -- Debug function -- Final library code -- Final controller code -- Using Facebook Connect -- Registering a Facebook application -- Download the Client library -- Our CodeIgniter Wrapper -- Base class -- Class constructor -- _session() -- -- Final library code -- The Controller -- The View file -- Summary -- 6. Application Security -- CodeIgniter's defenses -- URI security -- Why does CodeIgniter use URIs? -- Why does CodeIgniter restrict URI characters? -- Global data -- Best practices -- Filtering data -- Validation -- Escaping data -- Strong password policies -- Example Form Validation Library rules -- Storing passwords securely -- Storing hashes -- Hashing a password using sha1 -- The sha1() function -- The this->encrypt->sha1() function -- Load the library -- Hash the password -- Static salting -- Simple salts -- Complex salts -- Split at second character -- Split the password in the middle -- Dynamic salting -- Simple dynamic salts -- Complex dynamic salts -- Encrypting passwords -- Setting an encryption key -- Message length -- Loading the class -- Encoding passwords -- Decoding passwords -- Set mcrypt cipher -- Database security -- Escape queries -- The this->db->escape() function -- The this->db->escape_str() function -- The this->db->escape_like_str() function -- Query bindings -- Limiting account access -- Cross-site scripting (XSS) -- Changing the default file structure -- Staying up-to-date -- Summary -- 7. Building a Large-Scale Application -- Running benchmarks -- Why run benchmarks? -- Where should I use benchmarks? -- Types of bottlenecks -- Database -- Identifying a database bottleneck -- Rectifying a database bottleneck -- Code -- Identifying a code bottleneck -- Rectifying a code bottleneck -- API -- Identifying an API bottleneck -- Rectifying an API bottleneck -- Bandwidth.

Identifying a bandwidth bottleneck.
Abstract:
Become a CodeIgniter expert with professional tools, techniques and extended libraries.
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: