<?php
/**
* @link https://github.com/rogertiongdev/RTphp RTphp GitHub project
* @license https://rogertiongdev.github.io/MIT-License/
*/
/**
* Testing RTmysqli on PHP 5.3.29
*
* @version 0.1
* @author Roger Tiong RTdev
*/
/**
* Print values in new line
*
* @param type $v
*/
function nl($v) {
print sprintf('%s<br><br>', $v);
}
/**
* Print hr
*/
function nlhr() {
nl('---------------------------------------------------------------------');
}
require_once '../src/RTmysqli.php';
$db = new RTdev\RTphp\RTmysqli();
nlhr();
nl('Configure database ... ');
nlhr();
$db->config('localhost', 'rogertiong', '', 'rogertiongdev');
nlhr();
nl('INSERT single row.');
nlhr();
$sql = 'INSERT INTO test_tbl_001(fld_title, fld_body) VALUES(?,?)';
$param = array('st', 'Testing', '<p>I am just testing.</p>');
$inserted_id = $db->query($sql, $param);
nl(sprintf('SQL: %s', $db->sql));
nl(sprintf('Param: %s', json_encode($db->param)));
nl(sprintf('Last inserted id: %d', $inserted_id));
nl(sprintf('Duration microseconds: %s', $db->duration));
nlhr();
nl('SELECT single row.');
nlhr();
$result = $db->query('SELECT * FROM test_tbl_001 WHERE id = ?', array('i', $inserted_id));
nl(sprintf('SQL: %s', $db->sql));
nl(sprintf('Param: %s', json_encode($db->param)));
nl(sprintf('Selected data: %s', json_encode($result)));
nl(sprintf('Duration microseconds: %s', $db->duration));
nlhr();
nl('INSERT multiple rows');
nlhr();
$data = array(
array($inserted_id, 'Testing sub 1', '<p>I am just testing sub 1.</p>'),
array($inserted_id, 'Testing sub 2', '<p>I am just testing sub 2.</p>'),
array($inserted_id, 'Testing sub 3', '<p>I am just testing sub 3.</p>'),
array($inserted_id, 'Testing sub 4', '<p>I am just testing sub 4.</p>'),
array($inserted_id, 'Testing sub 5', '<p>I am just testing sub 5.</p>'),
array($inserted_id, 'Testing sub 6', '<p>I am just testing sub 6.</p>'),
);
$inserted_ids = $db->query('INSERT INTO test_tbl_002(tbl_001_id, fld_title, fld_body) VALUES(?,?,?)', array('ist', $data), true);
nl(sprintf('SQL: %s', $db->sql));
nl(sprintf('Param: %s', json_encode($db->param)));
nl(sprintf('Last inserted ids: %s', json_encode($inserted_ids)));
nl(sprintf('Duration microseconds: %s', $db->duration));
nlhr();
nl('SELECT INNER JOIN');
nlhr();
$result2 = $db->query('SELECT main.*, sub.* FROM test_tbl_001 AS main INNER JOIN test_tbl_002 AS sub ON main.id = sub.tbl_001_id');
nl(sprintf('SQL: %s', $db->sql));
nl(sprintf('Selected data: %s', json_encode($result2)));
nl(sprintf('Duration microseconds: %s', $db->duration));
nlhr();
nl('UPDATE');
nlhr();
$affected_row = $db->query('UPDATE test_tbl_002 SET fld_body = ? WHERE id IN (?,?,?)', array('tiii', '<p>Body updated.</p>', 1, 3, 5));
nl(sprintf('SQL: %s', $db->sql));
nl(sprintf('Param: %s', json_encode($db->param)));
nl(sprintf('Number of affected row(s): %d', $affected_row));
nl(sprintf('Duration microseconds: %s', $db->duration));
nlhr();
nl('DELETE');
nlhr();
$affected_row2 = $db->query('DELETE FROM test_tbl_002 WHERE id IN (2,4)');
nl(sprintf('SQL: %s', $db->sql));
nl(sprintf('Number of affected row(s): %d', $affected_row2));
nl(sprintf('Duration microseconds: %s', $db->duration));
nl(sprintf('SHOW Connected database table(s): %s', json_encode($db->SHOW_TABLES())));
nl(sprintf('LAST SHOW SQL: %s', $db->sql));
nl(sprintf('Duration microseconds: %s', $db->duration));
nl(sprintf('SHOW fields in a database table: %s', json_encode($db->SHOW_COLUMNS_FROM('test_tbl_002'))));
nl(sprintf('LAST SHOW SQL: %s', $db->sql));
nl(sprintf('Duration microseconds: %s', $db->duration));
nl(sprintf('SHOW fields in a database table: %s', json_encode($db->SHOW_COLUMNS_FROM(array('test_tbl_001', 'test_tbl_002')))));
nl(sprintf('LAST SHOW SQL: %s', $db->sql));
nl(sprintf('Duration microseconds: %s', $db->duration));
$db->query('TRUNCATE test_tbl_001');
$db->query('TRUNCATE test_tbl_002');
|