Example #1
40
function mySqlUpit($upit, $tip)
{
    $konekcija = mysqli_connect("localhost", "root", "", "0007cinevision");
    $konekcija->set_charset("utf8");
    if (mysqli_connect_errno()) {
        printf("Konekcija nije uspela: %s\n", mysqli_connect_error());
        exit;
    }
    $rezultat = mysqli_query($konekcija, $upit);
    if (!$rezultat) {
        printf("Greska: %s\n", mysqli_error($konekcija));
        exit;
    }
    if ($tip == 0) {
        return 0;
    }
    if ($tip == 1) {
        $rez = mysqli_fetch_array($rezultat, MYSQLI_NUM);
        $konekcija->close();
    } else {
        if ($tip == 2) {
            $rez = array();
            $i = 0;
            while (($red = mysqli_fetch_array($rezultat)) != NULL) {
                $rez[$i++] = $red;
            }
        }
    }
    if (!empty($rez)) {
        return $rez;
    }
    return -1;
}
 function connect($server, $db, $user, $password, $socketPath, $charset = null, $port = false)
 {
     $connection = false;
     if ($socketPath !== false) {
         ini_set("mysqli.default_socket", $socketPath);
     }
     if ($this->UsePersistentConnection == true) {
         // Only supported on PHP 5.3 (mysqlnd)
         if (version_compare(PHP_VERSION, '5.3') > 0) {
             $this->Server = 'p:' . $this->Server;
         } else {
             eZDebug::writeWarning('mysqli only supports persistent connections when using php 5.3 and higher', 'eZMySQLiDB::connect');
         }
     }
     eZPerfLogger::accumulatorStart('mysqli_connection', 'mysqli_total', 'Database connection');
     $connection = mysqli_connect($server, $user, $password, null, (int) $port, $socketPath);
     $dbErrorText = mysqli_connect_error();
     eZPerfLogger::accumulatorStop('mysqli_connection');
     $maxAttempts = $this->connectRetryCount();
     $waitTime = $this->connectRetryWaitTime();
     $numAttempts = 1;
     while (!$connection && $numAttempts <= $maxAttempts) {
         sleep($waitTime);
         eZPerfLogger::accumulatorStart('mysqli_connection', 'mysqli_total', 'Database connection');
         $connection = mysqli_connect($this->Server, $this->User, $this->Password, null, (int) $this->Port, $this->SocketPath);
         eZPerfLogger::accumulatorStop('mysqli_connection');
         $numAttempts++;
     }
     $this->setError();
     $this->IsConnected = true;
     if (!$connection) {
         eZDebug::writeError("Connection error: Couldn't connect to database. Please try again later or inform the system administrator.\n{$dbErrorText}", __CLASS__);
         $this->IsConnected = false;
         throw new eZDBNoConnectionException($server);
     }
     if ($this->IsConnected && $db != null) {
         eZPerfLogger::accumulatorStart('mysqli_connection', 'mysqli_total', 'Database connection');
         $ret = mysqli_select_db($connection, $db);
         eZPerfLogger::accumulatorStop('mysqli_connection');
         if (!$ret) {
             //$this->setError();
             eZDebug::writeError("Connection error: " . mysqli_errno($connection) . ": " . mysqli_error($connection), "eZMySQLiDB");
             $this->IsConnected = false;
         }
     }
     if ($charset !== null) {
         $originalCharset = $charset;
         $charset = eZCharsetInfo::realCharsetCode($charset);
     }
     if ($this->IsConnected and $charset !== null) {
         eZPerfLogger::accumulatorStart('mysqli_connection', 'mysqli_total', 'Database connection');
         $status = mysqli_set_charset($connection, eZMySQLCharset::mapTo($charset));
         eZPerfLogger::accumulatorStop('mysqli_connection');
         if (!$status) {
             $this->setError();
             eZDebug::writeWarning("Connection warning: " . mysqli_errno($connection) . ": " . mysqli_error($connection), "eZMySQLiDB");
         }
     }
     return $connection;
 }
 /**
  * 连接数据库方法
  * @access public
  * @throws ThinkExecption
  */
 public function connect($config = '', $linkNum = 0)
 {
     if (!isset($this->linkID[$linkNum])) {
         if (empty($config)) {
             $config = $this->config;
         }
         $this->linkID[$linkNum] = new \mysqli($config['hostname'], $config['username'], $config['password'], $config['database'], $config['hostport'] ? intval($config['hostport']) : 3306);
         if (mysqli_connect_errno()) {
             E(mysqli_connect_error());
         }
         $dbVersion = $this->linkID[$linkNum]->server_version;
         // 设置数据库编码
         $this->linkID[$linkNum]->query("SET NAMES '" . $config['charset'] . "'");
         //设置 sql_model
         if ($dbVersion > '5.0.1') {
             $this->linkID[$linkNum]->query("SET sql_mode=''");
         }
         // 标记连接成功
         $this->connected = true;
         //注销数据库安全信息
         if (1 != C('DB_DEPLOY_TYPE')) {
             unset($this->config);
         }
     }
     return $this->linkID[$linkNum];
 }
Example #4
0
 public function __construct()
 {
     $this->connnection = mysqli_connect('localhost', 'root', 'prafful', 'assignment2');
     if (mysqli_connect_error()) {
         trigger_error("database connection failed" . mysqli_connect_error(), E_USER_ERROR);
     }
 }
Example #5
0
 public function open_connection()
 {
     $this->connection = mysqli_connect('localhost', 'root', '', 'projectbrowser');
     if (mysqli_connect_errno()) {
         die("Database connection failed: " . mysqli_connect_error() . " (" . mysqli_connect_errno() . ")");
     }
 }
Example #6
0
		function __construct(/*$database = null*/) {
			# ранее подключение не происходило при каждом запросе
			# а только при создании класса $db

			# теперь же я подключение создается только при первом обращении к БД через метод $this->call(), все остальные методы либо не обращаютяс к БД либо обращаются к ней через него
			# это позволяет избежать лишних подключений к БД при каждом запросе страницы, если БД не используется
			# для этого подключение пытается создать толкьо при вызове $this->call(), который предварительно проверяет не было ли создано подключение ранее
			# в дальшейшем при обращении к БД ипользуется уже созданное подключение

			global $database;
			// if (empty($database)) {
				// $database = $GLOBALS['database'];
			// }
			if (empty($this->link)) {
				try {
					$this->link = new mysqli(
						 $database['host']
						,$database['user']
						,$database['pass']
						#,$database['name']
					);
				}
				catch(mysqli_sql_exception $e) {
					// $lang->give('mysqlerr');
					global $error;
					$error->report('Ошибка при подключении к Базе данных: ' . mysqli_connect_error() . ' :: ' . $e->getCode(), __LINE__, 'Fatal Error', $e->getCode());
				}
			}
			$query = "CREATE DATABASE IF NOT EXISTS `${database['name']}` CHARACTER SET utf8 COLLATE utf8_general_ci";
			$this->link->query($query);
			$this->link->select_db($database['name']);
			# неплохо бы сперва узнать есть база или нет, нету создавать её,записать лог, а уже потом выбирать её.
			$this->link->set_charset("utf8");

			// $dns = $database['driver'];
			// $dns .= ':host=' . $database['host'];
			// $dns .= (($database['port']) ? (';port=' . $database['port']) : '');
			// $dns .= ';dbname=' . $database['name'];
			// # SQLite  имеет другой синтаксис.... $DBH = new PDO("sqlite:my/database/path/database.db");

			// try {
			// 	$line = __LINE__ + 1;
			// 	$DBH = new PDO($dns, $database['user'], $database['pass']);
			// 	$DBH->setAttribute( PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION );
			// }
			// catch(PDOException $e) {
			// 	global $error;
			// 	$error->report($e->getMessage(), $line, 'Fatal Error', __FILE__);
			// }

			#$query = "CREATE DATABASE IF NOT EXISTS `${mysql['db']}` CHARACTER SET utf8 COLLATE utf8_general_ci;";

	// $mysqli = mysqli_init()
	// 	or die($msg['error']['mysqli']['init']);
 // 	$mysqli->real_connect($database['host'], $database['user'], $database['pass'])
	// 	or die($msg['error']['mysqli']['real_connect']);
	// $mysqli->select_db($database['name'])
	// 	or die($msg['error']['mysqli']['select_db']);

		}
Example #7
0
 /**
 +----------------------------------------------------------
 * 连接数据库方法
 +----------------------------------------------------------
 * @access public
 +----------------------------------------------------------
 * @throws ThinkExecption
 +----------------------------------------------------------
 */
 public function connect($config = '', $linkNum = 0)
 {
     if (!isset($this->linkID[$linkNum])) {
         if (empty($config)) {
             $config = $this->config;
         }
         $this->linkID[$linkNum] = new mysqli($config['hostname'], $config['username'], $config['password'], $config['database'], $config['hostport']);
         if (mysqli_connect_errno()) {
             throw_exception(mysqli_connect_error());
         }
         $dbVersion = $this->linkID[$linkNum]->server_version;
         if ($dbVersion >= "4.1") {
             // 设置数据库编码 需要mysql 4.1.0以上支持
             $this->linkID[$linkNum]->query("SET NAMES '" . C('DB_CHARSET') . "'");
         }
         //设置 sql_model
         if ($dbVersion > '5.0.1') {
             $this->linkID[$linkNum]->query("SET sql_mode=''");
         }
         // 标记连接成功
         $this->connected = true;
         //注销数据库安全信息
         if (1 != C('DB_DEPLOY_TYPE')) {
             unset($this->config);
         }
     }
     return $this->linkID[$linkNum];
 }
 public function __construct()
 {
     $this->_connection = new mysqli($host, $user, $password, $database, $port, $socket);
     if (mysqli_connect_error()) {
         trigger_error('There was an error connecting to database' . mysqli_connect_error());
     }
 }
function makeDb()
{
    // THIS SHOULD ONLY BE USED IN DEV ENVIRONMENT!!!!
    // NEEDS TO BE CHANGED WHEN USED TO UPDATE THE SERVER!!
    $con = new mysqli("localhost", "root", "", "nhvbsr");
    if (mysqli_connect_errno()) {
        echo "Failed to connect to MySQL: " . mysqli_connect_error();
    }
    //Call our function to get the assoc array....
    $statements = setupSQL();
    //I added this crappy noob workaround because I'm lazy and don't have time
    //to do it the right way...
    // The script was failing because it was trying to add foreign keys
    //before the reference table existed
    // so now we make all the tables, then go back and make them again with
    // all their relative foreign keys... Like I said its a terrible way.
    foreach ($statements as $queries) {
        //okay loop through... each value is a sql query so execute it...
        foreach ($queries as $key => $val) {
            $res = $con->query($val);
            // prep the statement for security....
            if ($stmt = $con->prepare($val)) {
                $stmt->execute();
            }
            //if it was no good print the error....
            if (!$res) {
                printf("<br /> Error at Key: {$key}: %s\n", $con->error);
            } else {
                echo "<br /> The table '{$key}' was successfully created! <br />";
            }
        }
    }
}
 public function __construct()
 {
     $this->con = new mysqli(__HOST__, __USER__, __PASS__, __BASE__);
     if (mysqli_connect_errno()) {
         die("DB connection failed:" . mysqli_connect_error());
     }
 }
Example #11
0
 public function DatabaseSettings()
 {
     $this->connection = new mysqli("localhost", "souvenirs1925", "souvenirs1925", "souvenirs1925");
     if (mysqli_connect_error()) {
         trigger_error("DB Error");
     }
 }
Example #12
0
 private function __construct($connect)
 {
     if (empty($connect)) {
         if ($GLOBALS["i"]["dev"]) {
             $host = "localhost";
             $user = "******";
             $pass = "******";
             $db = "bijoux";
         } else {
             $host = "localhost";
             $user = "******";
             $pass = "******";
             $db = "nickand5_bijoux";
         }
     } else {
         $host = $connect["host"];
         $user = $connect["user"];
         $pass = $connect["pass"];
         $db = $connect["db"];
     }
     //Connect to db
     $this->db = mysqli_connect($host, $user, $pass, $db);
     if (mysqli_connect_error()) {
         die('Connect Error (' . mysqli_connect_errno() . ') ' . mysqli_connect_error());
     }
 }
Example #13
0
function con_sql($sqlip, $sqlid, $sqlpass)
{
    @($con = new mysqli($sqlip, $sqlid, $sqlpass));
    if (mysqli_connect_errno()) {
        die(mysqli_connect_error());
    }
}
 public function __construct()
 {
     $this->con = mysqli_connect("localhost", "root", "123456", "passgen");
     if (mysqli_connect_errno()) {
         die("Failed to connect to MySQL: " . mysqli_connect_error());
     }
 }
Example #15
0
 private function connect()
 {
     $this->db_connect_id = mysqli_connect($this->obj['dbhost'], $this->obj['dbuser'], $this->obj['dbpwd'], $this->obj['dbname']);
     if (!$this->db_connect_id) {
         echo " Error no se puede conectar al servidor:" . mysqli_connect_error();
     }
 }
Example #16
0
 public function __construct($host, $user, $password, $db_name)
 {
     $this->connection = new mysqli($host, $user, $password, $db_name);
     if (mysqli_connect_error()) {
         throw new Exception('Could not connect to DB.');
     }
 }
function insertDatabaseFunc($username, $password, $queryType, $entity)
{
    require_once 'queryDatabaseHelper.php';
    if (validUsernameAndPassword($username, $password)) {
        $link = mysqli_connect("localhost", "Tommy", "pickles", "Model");
        if (strcmp($queryType, 'Unsubs') == 0) {
            $query = 'DELETE FROM `subscription` WHERE `username`=\'' . $username . '\' AND `orgnumber`=\'' . $entity . '\'';
        } elseif (strcmp($queryType, 'RSVP') == 0) {
            $query = 'INSERT IGNORE INTO `rsvp`(`username`, `eventnumber`) VALUES (\'' . $username . '\',' . $entity . ')';
        } elseif (strcmp($queryType, 'Subs') == 0) {
            $query = 'INSERT INTO `subscription`(`username`, `orgnumber`) VALUES (\'' . $username . '\',\'' . $entity . '\')';
        } elseif (strcmp($queryType, 'AndroidDevice') == 0) {
            $query = 'INSERT IGNORE INTO `androiddevice`(`username`, `device_id`) VALUES (\'' . $username . '\',\'' . $entity . '\')';
        }
        if (mysqli_connect_errno()) {
            printf("Connect failed: %s\n", mysqli_connect_error());
            exit;
        }
        if (mysqli_query($link, $query)) {
            echo 'true';
        } else {
            echo 'false';
        }
        mysqli_close($link);
    } else {
        echo 'false';
    }
}
Example #18
0
/**
 * Crée la première connexion à un serveur MySQL via MySQLi
 * 
 * @param string $host     Chemin du serveur
 * @param int $port        Port de connexion
 * @param string $login    Nom d'utilisateur
 * @param string $pass     Mot de passe
 * @param string $db       Nom de la base
 * @param string $prefixe  Préfixe des tables SPIP
 * @return array|bool
 *     - false si la connexion a échoué
 *     - tableau décrivant la connexion sinon
 */
function req_mysql_dist($host, $port, $login, $pass, $db = '', $prefixe = '')
{
    if (!charger_php_extension('mysqli')) {
        return false;
    }
    if ($port) {
        $link = @mysqli_connect($host, $login, $pass, '', $port);
    } else {
        $link = @mysqli_connect($host, $login, $pass);
    }
    if (!$link) {
        spip_log('Echec mysqli_connect. Erreur : ' . mysqli_connect_error(), 'mysql.' . _LOG_HS);
        return false;
    }
    $last = '';
    if (!$db) {
        $ok = $link;
        $db = 'spip';
    } else {
        $ok = mysqli_select_db($link, $db);
        if (defined('_MYSQL_SET_SQL_MODE') or defined('_MYSQL_SQL_MODE_TEXT_NOT_NULL')) {
            mysqli_query($link, $last = "set sql_mode=''");
        }
    }
    spip_log("Connexion MySQLi vers {$host}, base {$db}, prefixe {$prefixe} " . ($ok ? "operationnelle" : 'impossible'), _LOG_DEBUG);
    return !$ok ? false : array('db' => $db, 'last' => $last, 'prefixe' => $prefixe ? $prefixe : $db, 'link' => $link, 'total_requetes' => 0);
}
function cometchatDBConnect()
{
    global $dbh;
    $port = DB_PORT;
    if (empty($port)) {
        $port = '3306';
    }
    $dbserver = explode(':', DB_SERVER);
    if (!empty($dbserver[1])) {
        $port = $dbserver[1];
    }
    $db_server = $dbserver[0];
    $dbh = mysqli_connect($db_server, DB_USERNAME, DB_PASSWORD, DB_NAME, $port);
    if (mysqli_connect_errno($dbh)) {
        $dbh = mysqli_connect(DB_SERVER, DB_USERNAME, DB_PASSWORD, DB_NAME, $port, '/tmp/mysql5.sock');
    }
    if (mysqli_connect_errno($dbh)) {
        echo "<h3>Unable to connect to database due to following error(s). Please check details in configuration file.</h3>";
        if (!defined('DEV_MODE') || defined('DEV_MODE') && DEV_MODE != '1') {
            ini_set('display_errors', 'On');
            echo mysqli_connect_error($dbh);
            ini_set('display_errors', 'Off');
        }
        header('HTTP/1.1 503 Service Temporarily Unavailable');
        header('Status: 503 Service Temporarily Unavailable');
        header('Retry-After: 10');
        /* 10 seconds */
        exit;
    }
    mysqli_select_db($dbh, DB_NAME);
    mysqli_query($dbh, "SET NAMES utf8");
    mysqli_query($dbh, "SET CHARACTER SET utf8");
    mysqli_query($dbh, "SET COLLATION_CONNECTION = 'utf8_general_ci'");
}
Example #20
0
function UpdatePWD($id, $new_pwd)
{
    global $MYSQL_DB_NAME;
    global $MYSQL_USER_ID;
    global $MYSQL_USER_PWD;
    global $LOGON_SESSION_TTL;
    $mysqli = new mysqli("localhost", $MYSQL_USER_ID, $MYSQL_USER_PWD, $MYSQL_DB_NAME);
    /* check connection */
    if (mysqli_connect_errno()) {
        printf("Connect failed: %s\n", mysqli_connect_error());
        exit;
    }
    $mysqli->query('SET NAMES utf8');
    $stmt = $mysqli->prepare("UPDATE `student_roster` SET `pwd`=?, `pwd_update_time`=? WHERE `id`=? ;");
    if (!$stmt) {
        echo "<h1>prepare statement failed !<h1>";
        return false;
    }
    $stmt->bind_param("sis", $new_pwd, time(), $id);
    if ($stmt->execute() == FALSE) {
        echo "<h1>update password failed !<h1>";
        $stmt->close();
        return false;
    }
    //	echo ("<h1>affected ". $stmt->affected_rows." rows !<h1>");
    $stmt->close();
    return true;
}
Example #21
0
function validarLogin($login, $pass)
{
    $con = mysqli_connect("*********", "**********", "**********", "************");
    #Se comprueba la conexion
    if (mysqli_connect_errno()) {
        echo 'Error de conexion: ' . mysqli_connect_error();
        exit;
    }
    #Se quitan posibles caracteres especiales [NUL (ASCII 0), \n, \r, \, ', ", y Control-Z] (sql injection)
    $login = mysqli_real_escape_string($con, $login);
    $pass = mysqli_real_escape_string($con, $pass);
    #Se comprueban login y pass hasheada
    $usuario = mysqli_query($con, "SELECT login, pwd FROM Usuario WHERE login = '******'");
    #Se comprueba que se han devuelto resultados
    if (!$usuario) {
        echo 'Error en la consulta: ' . mysqli_error($con);
        exit;
    }
    #Se coge el resultado
    $result = mysqli_fetch_row($usuario);
    #Si coincide, se devuelve la lista de bichos de ese usuario
    if ($result[0] == $login && $result[1] == $pass) {
        return true;
    } else {
        return false;
    }
}
Example #22
0
 /**
  * 
  * @param string $db_server
  * @param string $db_user
  * @param string $db_password
  * @param bool|int $db_persist
  */
 public function __construct($db_server, $db_user, $db_password, $db_persist)
 {
     $this->con = mysqli_connect(($db_persist == 1 ? 'p:' : '') . $db_server, $db_user, $db_password);
     if (mysqli_connect_error()) {
         die('Database error: ' . mysqli_connect_error());
     }
 }
function updateDatabase($tableName, $columnName, $newInput)
{
    $dbHost = "localhost";
    // Host name
    $dbUsername = "******";
    // Mysql username
    $dbPassword = "******";
    // Mysql password
    $dbName = "manager";
    // Database name
    // $tbl_name="customers"; // Table name
    // Connect to server and select databse.
    $dbCon = new mysqli("{$dbHost}", "{$dbUsername}", "{$dbPassword}", "{$dbName}");
    if (mysqli_connect_errno($dbCon)) {
        echo "Failed to connect to MySQL: " . mysqli_connect_error();
    }
    $columnName = mysqli_real_escape_string($columnName);
    $newInput = mysqli_real_escape_string($newInput);
    $query = "SELECT * FROM {$tableName} WHERE {$columnName} like '%" . "{$newInput}" . "%'";
    // UPDATE {$taableName} set {$columnName} = '{$newpassword}' WHERE cust_num = '{$customerNumber}'";
    // DEBUG
    // echo $query . "<br>";
    $result = $dbCon->query($query);
    return $result;
}
 public function connect($config = '', $linkNum = 0)
 {
     if (!isset($this->linkID[$linkNum])) {
         if (empty($config)) {
             $config = $this->config;
         }
         $this->linkID[$linkNum] = new mysqli($config['hostname'], $config['username'], $config['password'], $config['database'], $config['hostport']);
         if (mysqli_connect_errno()) {
             throw_exception(mysqli_connect_error());
         }
         if ($this->autoCommit) {
             $this->linkID[$linkNum]->autocommit(true);
         } else {
             $this->linkID[$linkNum]->autocommit(false);
         }
         $this->dbVersion = $this->linkID[$linkNum]->server_version;
         if ($this->dbVersion >= "4.1") {
             $this->linkID[$linkNum]->query("SET NAMES '" . C('DB_CHARSET') . "'");
         }
         if ($this->dbVersion > '5.0.1') {
             $this->linkID[$linkNum]->query("SET sql_mode=''");
         }
         $this->connected = true;
         if (1 != C('DB_DEPLOY_TYPE')) {
             unset($this->config);
         }
     }
     return $this->linkID[$linkNum];
 }
Example #25
0
 /**
  * Creates a real connection to the database with multi-query capability.
  *
  * @return void
  * @throws Zend_Db_Adapter_Mysqli_Exception
  */
 protected function _connect()
 {
     if ($this->_connection) {
         return;
     }
     if (!extension_loaded('mysqli')) {
         throw new Zend_Db_Adapter_Exception('mysqli extension is not installed');
     }
     // Suppress connection warnings here.
     // Throw an exception instead.
     @($conn = new mysqli());
     if (false === $conn || mysqli_connect_errno()) {
         throw new Zend_Db_Adapter_Mysqli_Exception(mysqli_connect_errno());
     }
     $conn->init();
     $conn->options(MYSQLI_OPT_LOCAL_INFILE, true);
     #$conn->options(MYSQLI_CLIENT_MULTI_QUERIES, true);
     $port = !empty($this->_config['port']) ? $this->_config['port'] : null;
     $socket = !empty($this->_config['unix_socket']) ? $this->_config['unix_socket'] : null;
     // socket specified in host config
     if (strpos($this->_config['host'], '/') !== false) {
         $socket = $this->_config['host'];
         $this->_config['host'] = null;
     } elseif (strpos($this->_config['host'], ':') !== false) {
         list($this->_config['host'], $port) = explode(':', $this->_config['host']);
     }
     #echo "<pre>".print_r($this->_config,1)."</pre>"; die;
     @$conn->real_connect($this->_config['host'], $this->_config['username'], $this->_config['password'], $this->_config['dbname'], $port, $socket);
     if (mysqli_connect_errno()) {
         throw new Zend_Db_Adapter_Mysqli_Exception(mysqli_connect_error());
     }
     $this->_connection = $conn;
     /** @link http://bugs.mysql.com/bug.php?id=18551 */
     $this->_connection->query("SET SQL_MODE=''");
 }
Example #26
0
 function __construct()
 {
     $this->connection = mysqli_connect($this->host, $this->user, $this->pass, $this->name);
     if (mysqli_connect_errno($this->connection)) {
         echo "Failed to connect to MySQL: " . mysqli_connect_error();
     }
 }
Example #27
0
 public static function _init_mysql($config = array())
 {
     if (empty($config)) {
         // 记住不要把原来有的配置信息给强制换成$GLOBALS['config']['db'],否则换数据库会有问题
         self::$config = empty(self::$config) ? $GLOBALS['config']['db'] : self::$config;
     } else {
         self::$config = $config;
     }
     if (!self::$conn) {
         self::$conn = @mysqli_connect(self::$config['host'], self::$config['user'], self::$config['pass'], self::$config['name'], self::$config['port']);
         if (mysqli_connect_errno()) {
             self::$conn_fail++;
             $errmsg = 'Mysql Connect failed[' . self::$conn_fail . ']: ' . mysqli_connect_error();
             echo util::colorize(date("H:i:s") . " {$errmsg}\n\n", 'fail');
             log::add($errmsg, "Error");
             // 连接失败5次,中断进程
             if (self::$conn_fail >= 5) {
                 exit(250);
             }
             self::_init_mysql($config);
         } else {
             // 连接成功清零
             self::$conn_fail = 0;
             self::$worker_pid = function_exists('posix_getpid') ? posix_getpid() : 0;
             mysqli_query(self::$conn, " SET character_set_connection=utf8, character_set_results=utf8, character_set_client=binary, sql_mode='' ");
         }
     } else {
         $curr_pid = function_exists('posix_getpid') ? posix_getpid() : 0;
         // 如果父进程已经生成资源就释放重新生成,因为多进程不能共享连接资源
         if (self::$worker_pid != $curr_pid) {
             self::reset_connect();
         }
     }
 }
 function initDBConnection($test)
 {
     if (!$this->db) {
         if ($test) {
             echo "\nTrying DB Connection to " . $this->dbcData['DB_HOST'] . "...";
         }
         $this->db = new mysqli($this->dbcData['DB_HOST'], $this->dbcData['DB_USER'], $this->dbcData['DB_PASS'], $this->dbcData['DB_NAME']);
         /* verificar conexión */
         if (mysqli_connect_errno()) {
             printf("Connect failed: %s\n", mysqli_connect_error());
             exit;
         }
         //To query with ñ and tildes
         /* cambiar el conjunto de caracteres a utf8 */
         if (!$this->db->set_charset("utf8")) {
             printf("Error cargando el conjunto de caracteres utf8: %s\n", $this->db->error);
             exit;
         } else {
             //printf("Conjunto de caracteres actual: %s\n", $this->db->character_set_name());
         }
         if ($test) {
             echo "\nConnected!!";
         }
     }
 }
Example #29
0
 public function open_connection()
 {
     $this->connection = mysqli_connect(DB_SERVER, DB_USER, DB_PASS, DB_NAME);
     if (mysqli_connect_errno()) {
         die("Database connection failed: " . mysqli_connect_error() . "(" . mysqli_connect_errno() . ")");
     }
 }
Example #30
0
function get_cached_config($qrystr, $cachetime = 0)
{
    global $dbhost, $dbuser, $dbpass, $database, $num_queries, $cached_querys, $mySecret;
    $cache_file = realpath(dirname(__FILE__) . '/..') . '/cache/' . md5($qrystr . " -- " . $mySecret) . '.txt';
    $num_queries++;
    if ($cachetime > 0) {
        if (file_exists($cache_file) && time() - $cachetime < filemtime($cache_file)) {
            $cached_querys++;
            return unserialize(file_get_contents($cache_file));
        }
    }
    $GLOBALS["___mysqli_ston"] = mysqli_connect($dbhost, $dbuser, $dbpass) or die(is_object($GLOBALS["___mysqli_ston"]) ? mysqli_error($GLOBALS["___mysqli_ston"]) : (($___mysqli_res = mysqli_connect_error()) ? $___mysqli_res : false));
    (bool) mysqli_query($GLOBALS["___mysqli_ston"], "USE {$database}") or die(is_object($GLOBALS["___mysqli_ston"]) ? mysqli_error($GLOBALS["___mysqli_ston"]) : (($___mysqli_res = mysqli_connect_error()) ? $___mysqli_res : false));
    $mr = mysqli_query($GLOBALS["___mysqli_ston"], $qrystr . " -- " . $mySecret) or die(is_object($GLOBALS["___mysqli_ston"]) ? mysqli_error($GLOBALS["___mysqli_ston"]) : (($___mysqli_res = mysqli_connect_error()) ? $___mysqli_res : false));
    while ($mz = mysqli_fetch_assoc($mr)) {
        if ($mz['value'] == 'true') {
            $return[$mz['key']] = true;
        } elseif ($mz['value'] == 'false') {
            $return[$mz['key']] = false;
        } elseif (is_numeric($mz['value'])) {
            $return[$mz['key']] = max(0, $mz['value']);
        } else {
            $return[$mz['key']] = StripSlashes($mz['value']);
        }
    }
    unset($mz);
    mysqli_free_result($mr) || is_object($mr) && get_class($mr) == "mysqli_result" ? true : false;
    is_null($___mysqli_res = mysqli_close($GLOBALS["___mysqli_ston"])) ? false : $___mysqli_res;
    if ($cachetime > 0) {
        $fp = fopen($cache_file, 'w');
        fputs($fp, serialize($return));
        fclose($fp);
    }
    return $return;
}