From 68de9302277c3560b38820866b7daf851419bfd0 Mon Sep 17 00:00:00 2001 From: Slim Amamou Date: Sat, 26 Jan 2008 14:02:58 +0100 Subject: [PATCH] premiere version fonctionnelle mais un peu buggee --- test/bazdig-test.db => bazdig/bazdig.db | Bin 4096 -> 4096 bytes bazdig/console/index.php | 36 ++++++++++++++---------------- bazdig/db/index.php | 6 +++++ bazdig/db/set/index.php | 11 +++++++++ bazdig/history/index.php | 15 +++++++++++++ bazdig/sql/exec/index.php | 27 +++++++++++++++++++++++ lib/code.php | 14 ++++++++++++ test/SqlCodeTest.php | 38 +++++++++++++++++++++++++++----- test/bazdig-test.db | Bin 4096 -> 4096 bytes 9 files changed, 122 insertions(+), 25 deletions(-) copy test/bazdig-test.db => bazdig/bazdig.db (82%) rewrite bazdig/console/index.php (74%) create mode 100644 bazdig/db/index.php create mode 100644 bazdig/db/set/index.php create mode 100644 bazdig/history/index.php create mode 100644 bazdig/sql/exec/index.php diff --git a/test/bazdig-test.db b/bazdig/bazdig.db similarity index 82% copy from test/bazdig-test.db copy to bazdig/bazdig.db index d97bacbea0cced5b709b6cdad41e80dfa7650f81..440128add8b674e989d4c8d911b3806222da3c52 100644 GIT binary patch delta 410 zcwUWAOG?8)7;f^9C^Z#aYhm2^ATqB^X0q`T%~qHs6A+sQo4Ax#@Bo4Z58BpG9wQ9_zjrB)_P`u?Er`?#`Wo7Pw5WMZedE^jM5wiPbS^txK}gMKT(r#PRM zMN2S3luxM7}7SeQr_8g4bUoLRLwmPbOj zu_rDX@}t^T^$!UCI@i~rbGl4EHQVPNf<+HrVF6$8zS`e;fXicuo&S6Vb;3>i!GodG KOR^JnJIKsC+G6C3OpH79T6SK0iDn~wzmJ - -bazdig - - - -history -
- - -

- -

-

- -

-
- - + + +bazdig + + + +
+ + + +
+

history | database | save

+ + diff --git a/bazdig/db/index.php b/bazdig/db/index.php new file mode 100644 index 0000000..72a1e83 --- /dev/null +++ b/bazdig/db/index.php @@ -0,0 +1,6 @@ +
+ + + + +
diff --git a/bazdig/db/set/index.php b/bazdig/db/set/index.php new file mode 100644 index 0000000..e2c183e --- /dev/null +++ b/bazdig/db/set/index.php @@ -0,0 +1,11 @@ +get('/console')->url ); diff --git a/bazdig/history/index.php b/bazdig/history/index.php new file mode 100644 index 0000000..744d34f --- /dev/null +++ b/bazdig/history/index.php @@ -0,0 +1,15 @@ +get("/bazdig.db"); + $console = $bazdig->get("/console"); + SqlCode::set_db("sqlite:". $dbFile->get_file()); + + $queries = SqlCode::select('order by date desc limit 10'); + foreach ($queries as $q) { + echo ''. $q->code .''; + } diff --git a/bazdig/sql/exec/index.php b/bazdig/sql/exec/index.php new file mode 100644 index 0000000..b35ed81 --- /dev/null +++ b/bazdig/sql/exec/index.php @@ -0,0 +1,27 @@ +get('/db')->url ); + } + + define('WARAQ_ROOT', '../../..'); + require_once WARAQ_ROOT .'/'. 'ini.php'; + + require "code.php"; + + $history_db = new PDO("sqlite:". $bazdig->getparam('db')->file); + $work_db = new PDO($_SESSION['db'], $_SESSION['db_user'], $_SESSION['db_password']); + + SqlCode::set_db($history_db); + $query = new SqlCode($_GET['q']); + try { + $result = $query->exec($work_db); + } catch (Exception $e) { + die($e->getMessage()); + } + + $query->save(); + foreach ($result as $r) { + print_r($r); + } diff --git a/lib/code.php b/lib/code.php index 68e0a4c..3721b8a 100644 --- a/lib/code.php +++ b/lib/code.php @@ -93,4 +93,18 @@ } return $this; } + + static function search($string, $options = NULL) + { + $options = str_replace("where", "and", $options); + $scripts = self::select("where code like '%$string%' $options"); + return $scripts; + } + + function exec($db) + { + $db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); + $result = $db->query($this->code); + return $result->fetchAll(); + } } diff --git a/test/SqlCodeTest.php b/test/SqlCodeTest.php index 35da783..feca946 100644 --- a/test/SqlCodeTest.php +++ b/test/SqlCodeTest.php @@ -16,6 +16,7 @@ class SqlCodeTest extends UnitTestCase { $this->sqlCode2 = new SqlCode("select * from test"); $this->sqlCode2->id = 'test:001'; $this->sqlCode2->date = '2008-01-25'; + $this->markkitDB =& new PDO("sqlite2:markkit-test.db"); } function tearDown() @@ -25,7 +26,34 @@ class SqlCodeTest extends UnitTestCase { $this->db->exec("delete from $tableName where id='$id'"); } - function testtoSQLinsert() + function test_search() + { + $result = SqlCode::search("test"); + $expected = 2; + $this->assertEqual($expected, count($result)); + $expected = $this->sqlCode2; + $this->assertTrue($expected == $result[0] || $expected == $result[1]); + $result = SqlCode::search("test", "limit 1"); + $expected = 1; + $this->assertEqual($expected, count($result)); + $result = SqlCode::search("test", "where id='test:005'"); + $expected = 1; + $this->assertEqual($expected, count($result)); + } + + function test_exec() + { + $markkitQuery1 = new SqlCode("select * from marks where id='testid'"); + $result = $markkitQuery1->exec($this->markkitDB); + $expected = 'testuser'; + $this->assertEqual($expected, $result[0]['owner']); + $markkitQuery2 = new SqlCode("select * from marks where id='testid4'"); + $result = $markkitQuery2->exec($this->markkitDB); + $expected = 'http://localhost/test/x'; + $this->assertEqual($expected, $result[0]['pageUrl']); + } + + function test_toSQLinsert() { $result = $this->sqlCode->toSQLinsert(); $expected = "/insert/i"; @@ -34,7 +62,7 @@ class SqlCodeTest extends UnitTestCase { $this->assertWantedPattern($expected, $result); } - function testtoSQLselect() + function test_toSQLselect() { $result = $this->sqlCode->toSQLselect(); $expected = "/select/i"; @@ -43,7 +71,7 @@ class SqlCodeTest extends UnitTestCase { $this->assertWantedPattern($expected, $result); } - function testsql_select() + function test_sql_select() { $options = " where code like 'select %'"; $result = SqlCode::sql_select($options); @@ -57,14 +85,14 @@ class SqlCodeTest extends UnitTestCase { $this->assertWantedPattern($expected, $result); } - function testselect() + function test_select() { $result = SqlCode::select(" where id='test:001'"); $expected = array($this->sqlCode2); $this->assertEqual($expected, $result); } - function testsave() + function test_save() { $this->sqlCode->save(); $md5 = $this->sqlCode->id; diff --git a/test/bazdig-test.db b/test/bazdig-test.db index d97bacbea0cced5b709b6cdad41e80dfa7650f81..8d3c0ac9a5fa37162d0226a6171e00663b2d049a 100644 GIT binary patch delta 135 zcwTEzXi%6S%{Y0Z%nN2NCg#-)%-5J#Gly*!WbtO6+`{f;Z5Co^Y-M0#Wn`>vU}$Av zpvlA{Ypht3T3iC;m=>qzq$ZarXep!><>xAZL`{th3@mgF40VmnCSPOM1Dg4af%!A@ eGv;TT1vxe`Pd>}7%FE2dEXxQpV)G|%J{ADkjU}A` delta 77 zcwTEzXi%6S&1key<^?kcBl9%|=4;H2n*}*4m?uZFI|-PE7#dj_8CaQ^Xd4(>85m5y g#;ylc_L+hCGxKMlvh~ap1B50Y;8xxIiJOlF06#YtF#rGn -- 2.11.4.GIT