PhpRiot
Become Zend Certified

Prepare for the ZCE exam using our quizzes (web or iPad/iPhone). More info...


When you're ready get 7.5% off your exam voucher using voucher CJQNOV23 at the Zend Store

Basic usage

All examples in the MaxDB PHP documentation use the HOTELDB demo database from MaxDB. More about this database can be found at » http://maxdb.sap.com/doc/7_7/44/d8c25164bb38d0e10000000a1553f7/content.htm.

To use the examples in the MaxDB PHP documentation, you have to load the tutorial data into your database. Then you have to set maxdb.default_db in php.ini to the database that contains the tutorial data.

This simple example shows how to connect, execute a query, print resulting rows and disconnect from a MaxDB database.

Example #1 MaxDB extension overview example

<?php
$link 
maxdb_connect("localhost""MONA""RED""DEMODB");
   
/* check connection */
if (maxdb_connect_errno()) {
   
printf("Connect failed: %s\n"maxdb_connect_error());
   exit();
}

/* Performing SQL query */
$query "SELECT * FROM hotel.city";
$result maxdb_query($link$query) or die("Query failed : " maxdb_error());

/* Printing results in HTML */
echo "<table>\n";
while (
$line maxdb_fetch_array($resultMAXDB_ASSOC)) {
    echo 
"  <tr>\n";
    foreach (
$line as $col_value) {
        echo 
"    <td>$col_value</td>\n";
    }
    echo 
"  </tr>\n";
}
echo 
"</table>\n";

/* Free resultset */
maxdb_free_result($result);

/* Closing connection */
maxdb_close($link);
?>

The following example shows how to bind variables to a SELECT INTO statement.

Example #2 Example for use of SELECT INTO statements

<?php
$link 
maxdb_connect("localhost""MONA""RED""DEMODB");

/* check connection */
if (!$link) {
   
printf("Connect failed: %s\n"maxdb_connect_error());
   exit();
}
   
/* Performing SQL query */
$stmt maxdb_prepare ($link"SELECT percentage INTO ? FROM hotel.countrylanguage where language = ?");
if (!
$stmt) {
  
printf ("Prepare failed: %s\n"maxdb_error($link));
}

$name "Mbundu";

maxdb_stmt_bind_param($stmt'ds'$percentage$name);
maxdb_stmt_execute($stmt);

printf ("%f\n"$percentage);

maxdb_stmt_close ($stmt);
?>

The following example shows how to use MaxDB database procedures.

Example #3 Example fore using database procedures

<?php
$link 
maxdb_connect("localhost""MONA""RED""DEMODB");

/* check connection */
if (!$link) {
   
printf("Connect failed: %s\n"maxdb_connect_error());
   exit();
}

maxdb_report (MAXDB_REPORT_OFF);
maxdb_query($link,"DROP DBPROC test_proc");
maxdb_report (MAXDB_REPORT_ERROR);

$query "create dbproc test_proc (INOUT e_text char(72)) AS select * from SYSDBA.DUAL; fetch into :e_text;";

maxdb_query($link$query);

/* Performing SQL query */
$stmt maxdb_prepare ($link"CALL test_proc (?)");
if (!
$stmt) {
  
printf ("Prepare failed: %s\n"maxdb_error($link));
}

maxdb_stmt_bind_param($stmt's'$result);
maxdb_stmt_execute($stmt);

printf ("%s\n"$result);

maxdb_stmt_close ($stmt);
?>

PHP Manual