©
This document uses PHP Chinese website manual Release
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" );
if ( maxdb_connect_errno ()) {
printf ( "Connect failed: %s\n" , maxdb_connect_error ());
exit();
}
$query = "SELECT * FROM hotel.city" ;
$result = maxdb_query ( $link , $query ) or die( "Query failed : " . maxdb_error ());
echo "<table>\n" ;
while ( $line = maxdb_fetch_array ( $result , MAXDB_ASSOC )) {
echo " <tr>\n" ;
foreach ( $line as $col_value ) {
echo " <td> $col_value </td>\n" ;
}
echo " </tr>\n" ;
}
echo "</table>\n" ;
maxdb_free_result ( $result );
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" );
if (! $link ) {
printf ( "Connect failed: %s\n" , maxdb_connect_error ());
exit();
}
$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" );
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 );
$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 );
?>