views:

43

answers:

3

I want to connect php to Access without using ODBC connection like MySQL. Please give me solution. and also tell how to connect with SQL Oracle and other databases.

A: 

Connecting to an ODBC The odbc_connect() function is used to connect to an ODBC data source. The function takes four parameters: the data source name, username, password, and an optional cursor type.

The odbc_exec() function is used to execute an SQL statement.

Example The following example creates a connection to a DSN called northwind, with no username and no password. It then creates an SQL and executes it:

$conn=odbc_connect('northwind','',''); $sql="SELECT * FROM customers";

Retrieving Records The odbc_fetch_rows() function is used to return records from the result-set. This function returns true if it is able to return rows, otherwise false.

The function takes two parameters: the ODBC result identifier and an optional row number:

odbc_fetch_row($rs)

Retrieving Fields from a Record The odbc_result() function is used to read fields from a record. This function takes two parameters: the ODBC result identifier and a field number or name.

The code line below returns the value of the first field from the record:

$compname=odbc_result($rs,1);

The code line below returns the value of a field called "CompanyName":

$compname=odbc_result($rs,"CompanyName");

Closing an ODBC Connection The odbc_close() function is used to close an ODBC connection.

odbc_close($conn);

the following example show how to create connection:

An ODBC Example The following example shows how to first create a database connection, then a result-set, and then display the data in an HTML table.

<html>
<body><?php
$conn=odbc_connect('northwind','','');
if (!$conn)
{exit("Connection Failed: " . $conn);}
$sql="SELECT * FROM customers";
$rs=odbc_exec($conn,$sql);
if (!$rs)
{exit("Error in SQL");}
echo "<table><tr>";
echo "<th>Companyname</th>";
echo "<th>Contactname</th></tr>";
while (odbc_fetch_row($rs))
{
$compname=odbc_result($rs,"CompanyName");
$conname=odbc_result($rs,"ContactName");
echo "<tr><td>$compname</td>";
echo "<td>$conname</td></tr>";
}
odbc_close($conn);
echo "</table>";
?></body>
</html>
Sanjay
+2  A: 

You can interact with Access on a windows machine by using the COM class:

http://us2.php.net/manual/en/ref.com.php

http://code.activestate.com/recipes/163447/

c0mrade
A: 

You should spend a little more time on writing your question if you want decent answers.

You can use Database Abstraction Layers, like PDO or ADODB. With that, you'll be able to write the same code, that will run on many different databases.

About Access, I doubt there is a way to access it without ODBC. Any reason for that requirement?

Macmade