<?php 
 
# include config file 
require_once 'config.php'; 
 
# include the db client classes file (use own path of the file location) 
require_once '../Import.php'; 
 
# import client for MySql 
use Nemiro\Data\MySql as MySql; 
# import command class 
use Nemiro\Data\DBCommand as DBCommand; 
# import parameters type list 
use Nemiro\Data\DBParameterType as DBParameterType; 
 
# best practice is to use 'try { } catch { }' blocks 
try 
{ 
    # create a new client instance 
    $client = new MySql(); 
 
    # create commands 
    $firtCommand = new DBCommand('SELECT * FROM users LIMIT @from, @to'); 
    $firtCommand->Parameters->Add('@to', 20, DBParameterType::Integer); 
    $firtCommand->Parameters->Add('@from', 10, DBParameterType::Integer); 
 
    $secondCommand = new DBCommand 
    ( 
        'SELECT m.* FROM messages AS m '. 
        'INNER JOIN (SELECT id_users FROM users LIMIT @users_from, @users_to) AS u '. 
        'ON m.id_users = u.id_users '. 
        'LIMIT @messages_limit' 
    ); 
    $secondCommand->Parameters->Add('@messages_limit', 50, DBParameterType::Integer); 
    $secondCommand->Parameters->Add('@users_from', $firtCommand->Parameters['@from']->Value, DBParameterType::Integer); 
    $secondCommand->Parameters->Add('@users_to', $firtCommand->Parameters['@to']->Value, DBParameterType::Integer); 
 
    $thirdCommand = 'SELECT * FROM stat'; 
 
    # set commands to client instance 
    $client->Command = array($firtCommand, $secondCommand, $thirdCommand); 
 
    # execute the command and get DataSet 
    $data = $client->GetData(); 
 
    if (count($data) > 0) 
    { 
        # read tables 
        $index = 1; 
        foreach ($data as $table) 
        { 
            echo '<h2>Table #'.$index.'</h2>'; 
            $index++; 
            # output columns of the table 
            $columns = array_keys($table[0]); 
            echo '<table>'; 
            echo '<thead><tr>'; 
            foreach ($columns as $column) 
            { 
                echo '<td>'.$column.'</td>'; 
            } 
            echo '</tr></thead>'; 
 
            # output the table rows 
            echo '<tbody>'; 
            foreach ($table as $row) 
            { 
                echo '<tr>'; 
                foreach ($row as $field) 
                { 
                    echo '<td>'.(isset($field) ? $field : 'NULL').'</td>'; 
                } 
                echo '</tr>'; 
            } 
            echo '</tbody>'; 
            echo '</table>'; 
        } 
    } 
    else 
    { 
        echo 'The query returned no results...'; 
    } 
} 
catch (Exception $ex) 
{ 
    echo 'Error: '.$ex->getMessage(); 
} 
?>
 
 |