Browse Source

remove support for legacy mysql driver

Andrew Dolgov 7 years ago
parent
commit
e54eb40a8c
4 changed files with 10 additions and 107 deletions
  1. 1 5
      classes/db.php
  2. 0 81
      classes/db/mysql.php
  3. 1 1
      include/sanity_check.php
  4. 8 20
      install/index.php

+ 1 - 5
classes/db.php

@@ -13,11 +13,7 @@ class Db implements IDb {
 		} else {
 			switch (DB_TYPE) {
 			case "mysql":
-				if (function_exists("mysqli_connect")) {
-					$this->adapter = new Db_Mysqli();
-				} else {
-					$this->adapter = new Db_Mysql();
-				}
+				$this->adapter = new Db_Mysqli();
 				break;
 			case "pgsql":
 				$this->adapter = new Db_Pgsql();

+ 0 - 81
classes/db/mysql.php

@@ -1,81 +0,0 @@
-<?php
-class Db_Mysql implements IDb {
-	private $link;
-	private $last_error;
-
-	function connect($host, $user, $pass, $db, $port) {
-		$this->link = mysql_connect($host, $user, $pass);
-
-		if ($this->link) {
-			$result = mysql_select_db($db, $this->link);
-			if (!$result) {
-				die("Can't select DB: " . mysql_error($this->link));
-			}
-
-			$this->init();
-
-			return $this->link;
-		} else {
-			die("Unable to connect to database (as $user to $host, database $db): " . mysql_error());
-		}
-	}
-
-	function escape_string($s, $strip_tags = true) {
-		if ($strip_tags) $s = strip_tags($s);
-
-		return mysql_real_escape_string($s, $this->link);
-	}
-
-	function query($query, $die_on_error = true) {
-		$result = @mysql_query($query, $this->link);
-		if (!$result) {
-			$this->last_error = @mysql_error($this->link);
-
-			@mysql_query("ROLLBACK", $this->link);
-			user_error("Query $query failed: " . ($this->link ? $this->last_error : "No connection"),
-				$die_on_error ? E_USER_ERROR : E_USER_WARNING);
-		}
-		return $result;
-	}
-
-	function fetch_assoc($result) {
-		return mysql_fetch_assoc($result);
-	}
-
-
-	function num_rows($result) {
-		return mysql_num_rows($result);
-	}
-
-	function fetch_result($result, $row, $param) {
-		return mysql_result($result, $row, $param);
-	}
-
-	function close() {
-		return mysql_close($this->link);
-	}
-
-	function affected_rows($result) {
-		return mysql_affected_rows($this->link);
-	}
-
-	function last_error() {
-		return mysql_error();
-	}
-
-	function last_query_error() {
-		return $this->last_error;
-	}
-
-	function init() {
-		$this->query("SET time_zone = '+0:0'");
-
-		if (defined('MYSQL_CHARSET') && MYSQL_CHARSET) {
-			$this->query("SET NAMES " . MYSQL_CHARSET);
-		}
-
-		return true;
-	}
-
-}
-?>

+ 1 - 1
include/sanity_check.php

@@ -118,7 +118,7 @@
 				array_push($errors, "PHP support for JSON is required, but was not found.");
 			}
 
-			if (DB_TYPE == "mysql" && !function_exists("mysql_connect") && !function_exists("mysqli_connect")) {
+			if (DB_TYPE == "mysql" && !function_exists("mysqli_connect")) {
 				array_push($errors, "PHP support for MySQL is required for configured DB_TYPE in config.php.");
 			}
 

+ 8 - 20
install/index.php

@@ -51,7 +51,7 @@
 			array_push($errors, "PHP support for JSON is required, but was not found.");
 		}
 
-		if ($db_type == "mysql" && !function_exists("mysql_connect") && !function_exists("mysqli_connect")) {
+		if ($db_type == "mysql" && !function_exists("mysqli_connect")) {
 			array_push($errors, "PHP support for MySQL is required for configured $db_type in config.php.");
 		}
 
@@ -112,19 +112,10 @@
 			return $link;
 
 		} else if ($type == "mysql") {
-			if (function_exists("mysqli_connect")) {
-				if ($port)
-					return mysqli_connect($host, $user, $pass, $db, $port);
-				else
-					return mysqli_connect($host, $user, $pass, $db);
-
-			} else {
-				$link = mysql_connect($host, $user, $pass);
-				if ($link) {
-					$result = mysql_select_db($db, $link);
-					if ($result) return $link;
-				}
-			}
+			if ($port)
+				return mysqli_connect($host, $user, $pass, $db, $port);
+			else
+				return mysqli_connect($host, $user, $pass, $db);
 		}
 	}
 
@@ -184,15 +175,12 @@
 			return $result;
 		} else if ($type == "mysql") {
 
-			if (function_exists("mysqli_connect")) {
-				$result = mysqli_query($link, $query);
-			} else {
-				$result = mysql_query($query, $link);
-			}
+			$result = mysqli_query($link, $query);
+
 			if (!$result) {
 				$query = htmlspecialchars($query);
 				if ($die_on_error) {
-					die("Query <i>$query</i> failed: " . ($link ? function_exists("mysqli_connect") ? mysqli_error($link) : mysql_error($link) : "No connection"));
+					die("Query <i>$query</i> failed: " . ($link ? mysqli_error($link) : "No connection"));
 				}
 			}
 			return $result;