Spread your database connections with PHP PDO

Less is more

Security for virtualized datacentres

To retrieve data from the MySQL database, in a PHP script retrieveMySQLData_PDO.php, create a connection with the MySQL database using the PDO constructor. Prepare an SQL statement to run an SQL query using the prepare() function. Parameter markers may be used in a prepared statement. Specify a parameter marker for the CATALOGID column.

$stmt = $connection->prepare("SELECT * from CATALOG WHERE CATALOGID=?");

Set the cursor to be scrollable for the result set returned by the SQL query using the PDO:ATTR_CURSOR attribute.

$stmt ->setAttribute(PDO::ATTR_CURSOR, PDO::CURSOR_SCROLL);

Bind a PHP variable for the catalogId value to the parameter marker using the bindParam() function.

$stmt->bindParam(1, $catalogId);

Run the prepared statement using the execute() function.


Retrieve a row of data from the result set using the fetch() function. Iterate over the result set and add the data retrieved to the HTML table.

Oracle 10g

We shall use the oci PDO driver to connect with the Oracle database. Create a PHP script, createOracleTable_PDO.php. Create a connection with the Oracle database using the PDO constructor. The only difference from obtaining a connection with MySQL database is that the oci PDO driver is used instead of the mysql PDO driver.

$db = "oci:dbname=ORCL;host=localhost;port=1521";
$connection = new PDO($db, $user, $password);

Similar to the MySQL, database run SQL statements to create a database table, add data to the database table and retrieve data from the table. The query() function may be used to run an SQL query instead of a prepared statement.

IBM DB2 9 Trial Version

We shall use the odbc driver for PDO to connect with the DB2 database. Create a PHP script retrieveDB2Table_PDO.php. Create a connection with the DB2 database using the PDO constructor and the ODBC driver.

$connection = new PDO('odbc:SAMPLE', $user, $password);

The procedure to create a database table, and for adding data to and for retrieving data from the table is the same as MySQL and Oracle. The advantage of the PDO class library is that PHP scripts that may be run with any database by just modifying the connection parameters for the database specific PDO driver in the PDO constructor.

SQL Server 2005 Express Edition

We shall use the SQL Server PDO driver to connect with the SQL Server database. Create a PHP script createSQLServerTable_PDO.php. Obtain a connection with the SQL Server database using the PDO constructor and the mssql driver for SQL Server. The hostname and port are specified in host parameter in format localhost,port.

$connection=new PDO ('mssql:host=localhost,2107;dbname=tempdb', $user, $password);

The procedure to create a database table, add data to the database table, and retrieve data is the same as for the other databases.

In this article you learned to connect to different databases with the PHP PDO drivers using the same set of PHP functions. The same PHP scripts may be used by just modifying the connection parameters.®

Providing a secure and efficient Helpdesk

More from The Register

next story
New 'Cosmos' browser surfs the net by TXT alone
No data plan? No WiFi? No worries ... except sluggish download speed
iOS 8 release: WebGL now runs everywhere. Hurrah for 3D graphics!
HTML 5's pretty neat ... when your browser supports it
Mathematica hits the Web
Wolfram embraces the cloud, promies private cloud cut of its number-cruncher
Mozilla shutters Labs, tells nobody it's been dead for five months
Staffer's blog reveals all as projects languish on GitHub
'People have forgotten just how late the first iPhone arrived ...'
Plus: 'Google's IDEALISM is an injudicious justification for inappropriate biz practices'
SUSE Linux owner Attachmate gobbled by Micro Focus for $2.3bn
Merger will lead to mainframe and COBOL powerhouse
iOS 8 Healthkit gets a bug SO Apple KILLS it. That's real healthcare!
Not fit for purpose on day of launch, says Cupertino
prev story


Providing a secure and efficient Helpdesk
A single remote control platform for user support is be key to providing an efficient helpdesk. Retain full control over the way in which screen and keystroke data is transmitted.
A strategic approach to identity relationship management
ForgeRock commissioned Forrester to evaluate companies’ IAM practices and requirements when it comes to customer-facing scenarios versus employee-facing ones.
Saudi Petroleum chooses Tegile storage solution
A storage solution that addresses company growth and performance for business-critical applications of caseware archive and search along with other key operational systems.
WIN a very cool portable ZX Spectrum
Win a one-off portable Spectrum built by legendary hardware hacker Ben Heck
The next step in data security
With recent increased privacy concerns and computers becoming more powerful, the chance of hackers being able to crack smaller-sized RSA keys increases.