Файловый менеджер - Редактировать - /home/avadvi5/public_html/wp-content/plugins/unlimited-for-elementor-premium/inc_php/framework/mysql.class.php
Ðазад
<?php /** * @package Unlimited Elements * @author unlimited-elements.com * @copyright (C) 2021 Unlimited Elements, All Rights Reserved. * @license GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html * */ defined('UNLIMITED_ELEMENTS_INC') or die('Restricted access'); class UniteMySql{ // sqlite class constants: const TYPE_KEY = "INTEGER PRIMARY KEY NOT NULL AUTO_INCREMENT"; const TYPE_STRING = "VARCHAR(120)"; const TYPE_NUMBER = "INTEGER"; const TYPE_TEXT = "TEXT"; const TYPE_BOOLEAN = "BOOLEAN"; //error codes: const CODE_ZERO = 0; const CODE_TABLE_NOT_EXISTS = 1; private $mysql_host = ""; private $mysql_user = ""; private $mysql_pass = ""; private $mysql_database = ""; public static $handle = null; public $lastRowID = -1; public $lastArr = array(); private $charset = null; function __construct(){} /** * connect to database */ public function connect($host,$user,$pass,$database){ if(!function_exists("mysqli_connect")) throw new Exception("php mysql extension doesn't activated, please activate it in php.ini"); $this->mysql_host = $host; $this->mysql_user = $user; $this->mysql_pass = $pass; $this->mysql_database = $database; $this->getCreateDatabase(); } /** * set charset before connect */ public function setCharset($charset){ $this->charset = $charset; } /** * perform multi queries */ public function multiQueries($query){ $result = mysqli_multi_query(self::$handle, $query); $this->checkForErrors("Multi Query"); return $result; } /** * * throw new error * */ private function throwError($message, $code=null){ if($code == null) throw new Exception($message); else throw new Exception($message,$code); } //------------------------------------------------------------ public function confirmOutput($message=""){ return(array("success"=>true,"message"=>$message)); } //------------------------------------------------------------ // validates if handle exists. if not - exit with error message public function validateHandle($functionName = ""){ if(self::$handle == false){ if($functionName) $this->exitWithMessage("$functionName error - no open database"); else $this->throwError("sqlite error - no open database"); } return($this->confirmOutput()); } //------------------------------------------------------------ // validate table name field if empty or not exists - write error and exit. public function validateTableName($tableName,$functionName=""){ if(trim($tableName) == ""){ if($functionName) $this->throwError("$functionName error - no table found"); else $this->throwError("sqlite error - no table found"); } } //------------------------------------------------------------ // validate if table is created. if not - write error message and exist public function validateTable($tableName,$functionName){ $this->validateTableName($tableName,$functionName); if($this->isTableExists($tableName) == false){ if($functionName) return($this->throwError("$functionName error - the table $tableName doesn't exists",self::CODE_TABLE_NOT_EXISTS)); else $this->throwError("sqlite error - the table $tableName doesn't exists",self::CODE_TABLE_NOT_EXISTS); } } //------------------------------------------------------------ // valiadte fields array. if empty or the type is not array - write error message and exit. public function validateFields($arrFields,$functionName=""){ if(gettype($arrFields)!="array") $this->throwError("createTable error - the fields array isn't array type."); if(count($arrFields) == 0) $this->throwError("createTable error - the fields don't given."); } //------------------------------------------------------------ // set database file (without path) public function setDbFile($dbFilepath){ $this->dbFilepath = $dbFilepath; $response = $this->getCreateDatabase(); return($response); } //------------------------------------------------------------ public function setAbsolutePath($path){ $this->databaseAbsolutePath = $path; $this->dbFilepath = ""; } //------------------------------------------------------------ public function getLastRowID(){ return($this->lastRowID); } //------------------------------------------------------------ // return if table exists or not. public function isTableExists($tableName){ $sql = 'select * from '.$tableName; $numRows = mysqli_num_rows(mysqli_query(self::$handle,"SHOW TABLES LIKE '".$tableName."'")); $this->checkForErrors("Is table exists error",$sql); return($numRows != 0); } //------------------------------------------------------------ // create database. if already created - get database. public function getCreateDatabase(){ self::$handle = @mysqli_connect($this->mysql_host, $this->mysql_user, $this->mysql_pass); if(!self::$handle){ $errorNumber = mysqli_connect_errno(); if(!empty($errorNumber)){ $error = mysqli_connect_error(); $this->throwError($error); } } mysqli_select_db(self::$handle,$this->mysql_database); $this->checkForErrors("Mysql connect to database error"); if(!empty($this->charset)) mysqli_set_charset(self::$handle, $this->charset); return($this->confirmOutput()); } //------------------------------------------------------------ // validate for errors private function checkForErrors($prefix = "",$query=""){ if(mysqli_error(self::$handle) == false) return(false); $message = mysqli_error(self::$handle); if($prefix) $message = $prefix.' - '.$message; if($query) $message .= ' query: ' . $query; $this->throwError($message); } /** * get error message */ public function getErrorMsg(){ return mysqli_error(self::$handle); } /** * get last operation error code */ public function getErrorNumber(){ return mysql_errno(self::$handle); } /** * execute query with some error text */ public function query($query,$errorText=""){ mysqli_query(self::$handle,$query); $this->checkForErrors($errorText,$query); return(mysqli_affected_rows(self::$handle)); } /** * get query array */ public function getQueryArr($query, $errorText){ $rs = mysqli_query(self::$handle, $query); $this->checkForErrors($errorText, $query); $arrRows = array(); while($row = mysqli_fetch_assoc($rs)) $arrRows[] = $row; $this->lastArr = $arrRows; return($arrRows); } /** * get affected rows */ public function getAffectedRows(){ return(mysqli_affected_rows(self::$handle)); } /** * * returrn last insert id. */ public function insertid(){ $this->lastRowID = mysqli_insert_id(self::$handle); return($this->lastRowID); } //------------------------------------------------------------ //return escape database parameter string. public function escape($str){ if(function_exists("mysqli_real_escape_string")) return mysqli_real_escape_string(self::$handle, $str); return $str; } }// Database class end. ?>
| ver. 1.1 | |
.
| PHP 8.3.30 | Ð“ÐµÐ½ÐµÑ€Ð°Ñ†Ð¸Ñ Ñтраницы: 0 |
proxy
|
phpinfo
|
ÐаÑтройка