![]() |
VOOZH | about |
Drop the CData ODBC Driver for RabbitMQ into your LAMP or WAMP stack to build RabbitMQ-connected Web applications. This article shows how to use PHP's ODBC built-in functions to connect to RabbitMQ data, execute queries, and output the results.
If you have not already, first specify connection properties in an ODBC DSN (data source name). This is the last step of the driver installation. You can use the Microsoft ODBC Data Source Administrator to create and configure ODBC DSNs.
RabbitMQ is an open-source message broker that supports multiple messaging protocols. The RabbitMQ Management HTTP API provides HTTP-based access to management and monitoring data for a RabbitMQ server. The API exposes information about virtual hosts, exchanges, queues, bindings, connections, channels, consumers, users, permissions, policies, and cluster-wide statistics.
The Management plugin must be enabled on the RabbitMQ server for the HTTP API to be available. By default, the management interface listens on port 15672.
RabbitMQ Management HTTP API uses HTTP Basic authentication. You must supply the username and password of a RabbitMQ management user.
To enable access to the management API:
After configuring your RabbitMQ server, set the following connection properties to connect:
Profile=C:\profiles\RabbitMQ.apip;AuthScheme=Basic;URL=http://localhost:15672;User=guest;Password=guest;
The RabbitMQ profile provides access to the following tables:
Open the connection to RabbitMQ by calling the or methods. To close connections, use or .
$conn = odbc_connect("CData ODBC API Source","user","password");
Connections opened with are closed when the script ends. Connections opened with the method are still open after the script ends. This enables other scripts to share that connection when they connect with the same credentials. By sharing connections among your scripts, you can save system resources, and queries execute faster.
$conn = odbc_pconnect("CData ODBC API Source","user","password");
...
odbc_close($conn); //persistent connection must be closed explicitly
Create prepared statements and parameterized queries with the function.
$query = odbc_prepare($conn, "SELECT * FROM AuthAttempts WHERE NodeName = ?");
Execute prepared statements with .
$conn = odbc_connect("CData ODBC API Source","user","password");
$query = odbc_prepare($conn, "SELECT * FROM AuthAttempts WHERE NodeName = ?");
$success = odbc_execute($query, array('rabbit@hostname'));
Execute nonparameterized queries with .
$conn = odbc_connect("CData ODBC API Source","user","password");
$query = odbc_exec($conn, "SELECT , FROM AuthAttempts WHERE NodeName = 'rabbit@hostname'");
Access a row in the result set as an array with the function.
$conn = odbc_connect("CData ODBC RabbitMQ data Source","user","password");
$query = odbc_exec($conn, "SELECT , FROM AuthAttempts WHERE NodeName = 'rabbit@hostname'");
while($row = odbc_fetch_array($query)){
echo $row[""] . "\n";
}
Display the result set in an HTML table with the function.
$conn = odbc_connect("CData ODBC RabbitMQ data Source","user","password");
$query = odbc_prepare($conn, "SELECT * FROM AuthAttempts WHERE NodeName = ?");
$success = odbc_execute($query, array('rabbit@hostname'));
if($success)
odbc_result_all($query);
You will find complete information on the driver's supported SQL in the help documentation. The code examples above are RabbitMQ-specific adaptations of the PHP community documentation for all ODBC functions.
Connect to live data from RabbitMQ with the API Driver
Connect to RabbitMQ