From: <sam...@us...> - 2014-09-29 14:08:09
|
Revision: 52664 http://sourceforge.net/p/tikiwiki/code/52664 Author: sampaioprimo Date: 2014-09-29 14:07:59 +0000 (Mon, 29 Sep 2014) Log Message: ----------- update TRIM to work with PHP 5.5 by replacing calls to sqlite_* functions with PDO methods Modified Paths: -------------- trim/src/accesslib.php trim/src/env_setup.php trim/src/instancelib.php trim/src/reportlib.php Modified: trim/src/accesslib.php =================================================================== --- trim/src/accesslib.php 2014-09-29 12:17:12 UTC (rev 52663) +++ trim/src/accesslib.php 2014-09-29 14:07:59 UTC (rev 52664) @@ -32,7 +32,7 @@ array( ':id' => $instance->id ) ); $access = array(); - while( $row = sqlite_fetch_array( $result ) ) + while( $row = $result->fetch() ) { $class = self::getClassFor( $row['type'] ); Modified: trim/src/env_setup.php =================================================================== --- trim/src/env_setup.php 2014-09-29 12:17:12 UTC (rev 52663) +++ trim/src/env_setup.php 2014-09-29 14:07:59 UTC (rev 52664) @@ -76,7 +76,7 @@ } // Check for required extensions -if( ! function_exists( 'sqlite_open' ) ) +if( ! in_array( 'sqlite', PDO::getAvailableDrivers() ) ) die( "SQLite extension not available in current PHP installation. Impossible to continue.\n" ); // Check for required system dependencies @@ -123,29 +123,35 @@ if( ! is_writable( dirname(DB_FILE) ) ) die( "Impossible to generate database. Make sure data folder is writable.\n" ); - if( ! $db = sqlite_open( DB_FILE, 0666, $sqlite_error ) ) - die( "Could not create the database for an unknown reason. SQLite said: $sqlite_error\n" ); + try { + $db = new PDO( 'sqlite:' . DB_FILE ); + } catch (PDOException $e) { + die( "Could not create the database for an unknown reason. SQLite said: {$e->getMessage()}\n" ); + } - sqlite_query( $db, "CREATE TABLE info ( name VARCHAR(10), value VARCHAR(10), PRIMARY KEY(name) );" ); - sqlite_query( $db, "INSERT INTO info ( name, value ) VALUES( 'version', '0' );" ); - sqlite_close( $db ); + $db->exec( "CREATE TABLE info ( name VARCHAR(10), value VARCHAR(10), PRIMARY KEY(name) );" ); + $db->exec( "INSERT INTO info ( name, value ) VALUES( 'version', '0' );" ); + $db = null; $file = DB_FILE; } -if( ! $db = sqlite_open( DB_FILE, 0666, $sqlite_error ) ) - die( "Could not create the database for an unknown reason. SQLite said: $sqlite_error\n" ); +try { + $db = new PDO( 'sqlite:' . DB_FILE ); +} catch (PDOException $e) { + die( "Could not connect to the database for an unknown reason. SQLite said: {$e->getMessage()}\n" ); +} // Obtain the current database version -$result = sqlite_query( $db, "SELECT value FROM info WHERE name = 'version'" ); -$version = (int) sqlite_fetch_single( $result ); +$result = $db->query( "SELECT value FROM info WHERE name = 'version'" ); +$version = (int) $result->fetchColumn(); // Update the schema to the latest version // One case per version, no breaks, no failures switch( $version ) // {{{ { case 0: - sqlite_query( $db, " + $db->exec( " CREATE TABLE instance ( instance_id INTEGER PRIMARY KEY, name VARCHAR(25), @@ -182,7 +188,7 @@ UPDATE info SET value = '1' WHERE name = 'version'; " ); case 1: - sqlite_query( $db, " + $db->exec( " CREATE TABLE backup ( instance_id INTEGER, location VARCHAR(200) @@ -196,7 +202,7 @@ UPDATE info SET value = '2' WHERE name = 'version'; " ); case 2: - sqlite_query( $db, " + $db->exec( " CREATE TABLE report_receiver ( instance_id INTEGER PRIMARY KEY, user VARCHAR(200), @@ -214,7 +220,7 @@ UPDATE info SET value = '3' WHERE name = 'version'; " ); case 3: - sqlite_query( $db, " + $db->exec( " UPDATE access SET host = (host || ':' || '22') WHERE type = 'ssh'; UPDATE access SET host = (host || ':' || '22') WHERE type = 'ssh::nokey'; UPDATE access SET host = (host || ':' || '21') WHERE type = 'ftp'; @@ -228,7 +234,7 @@ { if( is_null( $params ) ) $params = array(); - + foreach( $params as $key => $value ) { if( is_null( $value ) ) @@ -238,9 +244,10 @@ else $query = str_replace( $key, "'$value'", $query ); } - + global $db; - $ret = sqlite_query( $db, $query, SQLITE_ASSOC, $errors ); + $ret = $db->query( $query ); + if( ! $ret ) echo $query; @@ -250,7 +257,7 @@ function rowid() // {{{ { global $db; - return sqlite_last_insert_rowid( $db ); + return $db->lastInsertId(); } // }}} // Tools Modified: trim/src/instancelib.php =================================================================== --- trim/src/instancelib.php 2014-09-29 12:17:12 UTC (rev 52663) +++ trim/src/instancelib.php 2014-09-29 14:07:59 UTC (rev 52664) @@ -21,7 +21,7 @@ $result = query( "SELECT instance_id id, name, contact, webroot, weburl, tempdir, phpexec, app FROM instance" ); $instances = array(); - while( $instance = sqlite_fetch_object( $result, 'Instance' ) ) + while( $instance = $result->fetchObject( 'Instance' ) ) { $instances[] = $instance; } @@ -36,7 +36,7 @@ FROM instance WHERE instance_id = :id", array( ':id' => $id ) ); - $instance = sqlite_fetch_object( $result, 'Instance' ); + $instance = $result->fetchObject( 'Instance' ); return $instance; } // }}} @@ -56,7 +56,7 @@ WHERE type = 'cvs' OR type = 'svn' OR type = 'tarball'" ); $instances = array(); - while( $instance = sqlite_fetch_object( $result, 'Instance' ) ) + while( $instance = $result->fetchObject( 'Instance' ) ) { $instances[] = $instance; } @@ -229,7 +229,7 @@ LIMIT 1", array( ':id' => $this->id ) ); - $object = sqlite_fetch_object( $result, 'Version' ); + $object = $result->fetchObject( 'Version' ); return $object; } // }}} @@ -292,7 +292,7 @@ array( ':id' => $this->id ) ); $list = array(); - while( $str = sqlite_fetch_single( $result ) ) + while( $str = $result->fetchColumn() ) $list[] = $str; return $list; @@ -390,7 +390,7 @@ { $result = query( "SELECT COUNT(*) FROM file WHERE version_id = :id", array( ':id' => $this->id ) ); - return sqlite_fetch_single( $result ) > 0; + return $result->fetchColumn() > 0; } // }}} function performCheck( Instance $instance ) // {{{ @@ -492,7 +492,7 @@ $result = query( "SELECT path, hash FROM file WHERE version_id = :v", array( ':v' => $this->id ) ); - while( $row = sqlite_fetch_array( $result ) ) + while( $row = $result->fetch() ) { extract( $row ); $map[$path] = $hash; Modified: trim/src/reportlib.php =================================================================== --- trim/src/reportlib.php 2014-09-29 12:17:12 UTC (rev 52663) +++ trim/src/reportlib.php 2014-09-29 14:07:59 UTC (rev 52664) @@ -11,7 +11,7 @@ WHERE report_receiver.instance_id IS NULL " ); - $records = sqlite_fetch_all( $result ); + $records = $result->fetchAll(); $ids = array_map( 'reset', $records ); $instance = new Instance; @@ -27,7 +27,7 @@ WHERE receiver_id = :id", array( ':id' => $instance->id ) ); - $records = sqlite_fetch_all( $result ); + $records = $result->fetchAll(); $ids = array_map( 'reset', $records ); $instance = new Instance; @@ -46,7 +46,7 @@ WHERE report_content.instance_id IS NULL", array( ':id' => $instance->id ) ); - $records = sqlite_fetch_all( $result ); + $records = $result->fetchAll(); $ids = array_map( 'reset', $records ); $instance = new Instance; @@ -88,7 +88,7 @@ $senders = query( 'SELECT instance_id, user, pass FROM report_receiver' ); $out = array(); - while( $row = sqlite_fetch_array( $senders ) ) { + while( $row = $senders->fetch() ) { $instance = new Instance; $instance = $instance->getInstance( $row['instance_id'] ); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |