<?php /* * EXAMPLE 1 FILE FOR PTCQUERYBUILDER CLASS, PREPARING QUERIES FOR LATER USAGE * ALL QUERIES THAT ARE PREPARED WITH THE QUERYBUILDER, NEED PLACE HOLDERS * TO SEE THE QUERIES EXECUTED REFER TO PTCQUERYBUILDER-EX2.PHP EXAMPLE FILE */ require_once '../PtcQueryBuilder.php'; // including the query builder component $qb = new PtcQueryBuilder(); // initializing the class /* SELECT ALL RECORDS */ $query = $qb->table('test_table')->prepare(); /* SELECT WITH COLUMNS SPECIFIED */ $query_with_columns = $qb->table('test_table')->select('some_column as test')->prepare(); /* SELECT WITH A WHERE CLAUSE */ $query_where = $qb->table('test_table')->where('field1', '=', ':value')->prepare(); /* SELECT WITH WHERE OR WHERE CLAUSE */ $query_where1 = $qb->table('test_table')->where('field1', '=', ':value1')->or_where('field2', '=', ':value2')->prepare(); /* SELECT WITH LIMIT, GROUP BY, ORDER AND LIMIT */ $query_where2 = $qb->table('test_table')->order('field1', 'desc')->limit(':start', ':end')->prepare(); /* INSERT */ $fields = array('field1' => ':value1', 'field2' => ':value2', 'field3' => ':value3'); $query_insert = $qb->table('test_table')->insert($fields)->prepare(); /* UPDATE BASED ON ID */ $fields = array('field1' => ':value1', 'field2' => ':value2'); $query_update = $qb->table('test_table')->update($fields, ':id')->prepare(); /* UPDATE BASED ON A WHERE CLAUSE */ $fields = array('field1' => ':value1', 'field2' => ':value2'); $query_update1 = $qb->table('test_table')->where('field2', '=', ':value3')->update($fields)->prepare(); /* DELETE BASED ON ID */
// mysql user $db['pass'] = '******'; // mysql pass $db['database'] = 'database'; // mysql database name /*************************************************************/ $running = true; // preventing the example1 file to print the queries require_once 'ptcquerybuilder-ex1.php'; // require the example 1 file with the prepared queries /* INITIALIZING A PDO OBJECT TO RUN QUERIES WITH THE QUERYBUILDER */ $pdo = new PDO('mysql:host=' . $db['host'] . ';dbname=' . $db['database'] . ';charset:uft8;', $db['user'], $db['pass']); $pdo->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_OBJ); // setting pdo default fetch mode /* INITIALIZING THE QUERY BUILDER WITH PDO SUPPORT */ $qb = new PtcQueryBuilder($pdo); /* CREATE THE EXAMPLE TABLE */ $qb->run("DROP TABLE IF EXISTS `test_table`"); $qb->run("CREATE TABLE `test_table` \n\t(\n\t\t`id` int NOT NULL AUTO_INCREMENT, \n\t\tPRIMARY KEY(`id`),\n\t\t`field1` varchar(255),\n\t\t`field2` varchar(255),\n\t\t`field3` varchar(255)\n\t)"); /* INSERTING DATA WITH PREVIOUSLY PREPARED STATEMENT */ $qb->run($query_insert, array(':value1' => 'somevalue', ':value2' => 'somevalue12', ':value3' => 180)); $qb->run($query_insert, array(':value1' => 'somevalue', ':value2' => 'somevalue1', ':value3' => 20)); $qb->run($query_insert, array(':value1' => 'somevalue', ':value2' => 'somevalue12', ':value3' => 200)); /* GET LAST INSERTED ID */ $last_id = $qb->lastId(); print '<b>last inserted Id:</b> ' . $last_id . '<br><br>'; /* UPDATING DATA WITH PREVIOUSLY PREPARED STATEMENT */ $qb->run($query_update, array(':value1' => 'somevalue', ':value2' => 'insert id', ':id' => $last_id)); // using last inserted id here $qb->run($query_update1, array(':value1' => 'som32', ':value2' => 'so 43', ':value3' => 'somevalue12')); /* GET NUMBER OF AFFECTED ROWS BY LAST QUERY */