Article Side

Online Article Directory!

Hello Guest! Login or Register to submit articles!

Optimum PHP Database Connectivity - the PDO Way

By James Andy Subscribe to RSS | June 25th 2012 | Views:
loading
 
  



Hypertext Processor or PHP, as it is more commonly known, has entranced the minds of developers worldwide. It is a general-purpose scripting language that can be embedded in HTML. One of the major advantages of PHP is its ability to talk with a variety of databases. This adds the much-needed interactive dimension to websites whereusers can fetch dynamic data and perform transactions. The heart of any web application is not its UI or its controller; it’s the database that stores and provides data based on the queries that are made to it. PHP, being a widely popular programming language, is adopted across the world by dedicated PHP programmers handling large-scale projects for firms providing PHP Web Development Services. If you are one the countless offshore PHP developers who have handled database interactions, and still use the traditional PHP MySQL API for database connections, then this article is precisely targeted at you.

Did you know PHP offers 3 types of APIs for database connectivity? No? Well, here’s some information on them:

MySQL – The most popular API which establishes database connectivity in the easiest of manners.

MySQLi – An ‘Improved’ version of the MySQL API.

PDO – PHP Data Objects, an API that is database agnostic and supports prepared statements, thus negating the requirement for SQL Injection.

Looking at the above points, some might say feel that MySQL seems to be the easiest way out, then why should we try anything else! Well, let us give you three reasons. Firstly, some of the commonly used MySQL API database connectivity code snippets are all set to be deprecated as they do not adhere to the best practices policy are not exactly the right learning that greenhorn developers should pick up. Second, if you need to escape user input, you need to specifically do it from the code, which can be a complex endeavor, especially if you are new to database connectivity and don’t have a clue about data sanitization. Third and the most important point; the MySQL API is inflexible which means you will come up a cropper if you decide to switch databases. Reason enough to consider PDO?

Remember the traditional way of connecting to a MySQL database:

# Connect

mysql_connect('localhost', 'username', 'password') or die('Could not connect: '. mysql_error());

Now consider the PDO technique where we create a new class instance, specify the driver, database name, username, and password:

$conn= newPDO('mysql:host=localhost;dbname=myDatabase', $username, $password);

The main advantage of this technique is that in the event of switching of databases, you can simply update the DSN. This reduces your dependency of MySQL and eliminates the absolute necessity of functions, such as mysql_connect.

But what about errors, you will ask! If the database connection is not established, how do we check the error? PDO offers 3 error mode options to deal with exceptions:

PDO::ERRMODE_SILENT

PDO::ERRMODE_WARNING

PDO::ERRMODE_EXCEPTION

The default error mode is PDO::ERRMODE_SILENT, which does not throw up any exceptions. You must remember to change the default mode to PDO::ERRMODE_EXCEPTION which throws up exceptions as soon as they occur and stops the execution of the script. You can write a simple try-catch code block to capture these exceptions. Failure to do so will require you to manually fetch these non-captured errors.

Now comes the most important part, the core function; retrieving information from the database. This can be done using two options, query and execute. The query method involves using the PDO::Quote method to manually escape data and is almost similar to the mysql_real_escape_string. A word of advice here; if you are dealing with data that a user fills in to a form, use prepared statements instead. For any other data that is not form data, the query method is ideal.

Prepared statements are used via the prepare method that use named parameters, eliminating the need for SQL injection. These statements are then executed by passing data into the named placeholders. Now we come to the part of receiving the data that is fetched by prepared statements.

The PDO API provides multiple options to interact with the result. These include:

PDO::FETCH_ASSOC – default response, returns an array

PDO::FETCH_BOTH – returns an array, indexed by both column-name, and 0-indexed

PDO::FETCH_BOUND – returns TRUE and uses PHP variable for assignment of values in the columns

PDO::FETCH_CLASS – returns a new instance of the class used

PDO::FETCH_OBJ – returns an object that contains property names associated with columns

The PDO prepare extension is especially suited to the execution on the same query multiple times, each time with separate parameters. You can easily perform the common CRUD tasks that every PHP developer handles day in and day out. But the advantage that rises above all these features, is the usage of an object or class instance for mapping query results. These inherent advantages should be proof enough for you to switch over from your old MySQL API to PDO. It will not only make your code more secure, but also streamline it to a great extent. And who can forget the coveted flexibility to switch over to any database! All of you, the PHP developer community including all offshore PHP developers, go PDO now, if you haven’t already!

We are GoodCore, a leading Offshore Software Development Company in Malaysia. Having garnered expertise in every cutting-edge web development technology that emerges in the market, we apply our skills to the conceptualization, development and deployment of clutter-breaking solutions for clients across the world. We ensure that our team of developers, programmers and consultants are on top of every new development in the technology arena and are primed to lend that advantage to your product. Over the years, we have gained the trust and credibility of many elite clients across the globe. We wish to extend the same quality of services to you. You can hire dedicated PHP developers from us who will help develop cost-effective solutions that match your requirements to the T. If you wish to develop state-of-the-art PHP solutions that are not just path-breaking, but also ROI-intensive, don’t hesitate to approach us. Our vast repertoire of talent is at your service!

Source: http://software-development-technologies.blogspot.com/

James Andy - About Author:
James Andy is technical writer and specialized in software development technologies. He has past five years experience of technical content writing, his strong area is Microsoft .net development technologies.

Share on Facebook Tweet It Stumbleupon this post This post is delicious !

Article Source:
http://www.articleside.com/software-articles/optimum-php-database-connectivity-the-pdo-way.htm

Related Software Articles Subscribe to RSS

Enormity of Mobile application development
Published by Terry Littrell on June 15th 2012 | Software
The article is about the in-demand mobile application development companies. Also showcases the enor...
 
Benefits of Application support offshore services to increase growth
Published by Joginder Singh on January 9th 2012 | Software
Technical support services offshore services can be truly valuable to hold the grip of client retent...
 
SharePoint 2010 helps in the development and customization of solutions
Published by Cygnet Infotech on July 11th 2012 | Software
SharePoint 2010 is the latest and advanced version of Microsoft Office SharePoint. The new version o...
 
Microsoft CRM development Concrete Organizational Benefits
Published by Grey Matter India on December 29th 2011 | Computer
This article introduces readers to the basics of CRM. As Microsoft is the most implemented CRM, we w...
 
Cardiff web design services
Published by Powebdesign on June 14th 2012 | Computer
It is the dream of every site owner to have it listed on top of the search engine results....
 
How to Find a reasonable iPone Game development company?
Published by Deniel on June 9th 2012 | Software
SamifLabs is a Leading iPhone Development Company based in India we provide iPhone Application Devel...
 
Points to Ponder about mobile website development
Published by Angel on December 12th 2011 | Software
Mobile audiences are growing rapidly and business sales rate through mobile devices too growing. New...
 
Beauty Parlor Software development company in pitampura.
Published by Raman Sharma on April 27th 2012 | Software
Numinous IT Group is leading provider of custom software development services in New Dehli, India We...
 
Enroll with TESDA to provide the best computer technical support and services
Published by Carolmoore on February 28th 2012 | Computer
With a rise in the number of computer technicians, the challenge to provide the best computer techni...
 
Advantages of Custom Software development in a Small Organization
Published by Van Sanchez on June 5th 2012 | Software
Custom software development could support small businesses in some locations. These places integrate...
 
Outsource Joomla extensions developer for cost effective services
Published by Terry Littrell on July 19th 2012 | Software
The above writeup is about Joomla development and Joomla 1.6 extensions. Cost effective Joomla servi...
 
Understand the Four Primary Significant Parts in the iPhone application development Methods?
Published by Jared Oates on May 14th 2012 | Computer
iPhone application development has actually obtained incredible worldwide popularity nowadays. It's ...
 
Understanding what caching is within software development as well as exactly what is available together with it
Published by Waltersloan on May 25th 2012 | Software
What is considered to be crucial in newer software development program is usually concurrency. Concu...
 
Everest services is offering huge discounts and offers on its carpet cleaning and pest control services
Published by Ctscbcs1 on November 29th 2011 | Computer
Everest services which is a leading service provider of house pest control and carpet cleaning in Sy...
 
Mobile application development – Three important steps for developers
Published by Angel on June 6th 2012 | Software
Companies that want to build robust apps through mobile application development program are keen to ...
 
How customers get benefited from mobile banking services
Published by Angel on December 21st 2011 | Software
Mobile banking services offered by financial institutions help customers in different ways. The mobi...
 
Do financial institutions derive good mileage out of mobile banking services
Published by Angel on April 3rd 2012 | Software
Financial institutions are offering mobile banking services to afford convenience banking to custome...
 
Joomla Development - Exceptional CMS platform for website development
Published by GR Brains on November 25th 2011 | Software
We have expert professionals for Joomla development with highly experienced providing Joomla Custom ...
 
Why choose Groovy and Grails for web application development
Published by Roger Lopez on April 27th 2012 | Software
This biased interacting of devices prescribes that network managers yet need a computer to access th...
 
Custom CMS Development necessary for better website development
Published by Pranav Thakker on December 15th 2011 | Software
CMS Development is one kind of software packages that is being used by most of people widely range t...