Файл: newstats.ru/newstats.ru/system/classes/Core.class.php
Строк: 54
<?php
// Автор проекта GEARBAKC
// Офф.сайт GEARNET.RU
// http://gearnet.ru/users/1
// Только эксклюзивные скрипты!
/**
------------------------------------------------------------------------
* Работа с бд
*
* @application PHPage Core
* @support http://phpage.ru
* @copyright Copyright (c) 2014 PHPage Group
* @author http://phpage.ru/PHPage/Group
* @documentation http://phpage.ru/documentation
* @license http://phpage.ru/license.txt (see attached file)
* @instruction http://phpage.ru/readme.txt (see attached file)
* @file /system/classes/Core.class.php
------------------------------------------------------------------------
*/
class Core{
private static $db;
private static $db_host = 'localhost';
private static $db_name = 'newstats';
private static $db_user = 'newstats';
private static $db_pass = '5yQM7qpt';
public static $config;
/**
* Подключение к базе с помощью PDO
*/
private static function connect(){
try {
self::$db = new PDO('mysql:host='.self::$db_host.';dbname='.self::$db_name, self::$db_user, self::$db_pass);
self::$db -> exec('SET CHARACTER SET utf8');
self::$db -> exec('SET NAMES utf8');
return self::$db;
}
catch (PDOException $e) {
die('Connection failed: '.$e -> getMessage());
}
}
/**
* Инициализация базы, конфигурационных данных
*/
public static function run(){
self::$config = self::connect() -> query("SELECT * FROM `system`") -> fetch();
return self::connect();
}
/**
* Подготовленный запрос к базе данных
* Пример использования
* Core::query("DELETE FROM `$config[prefix]_users` WHERE `id` = ? && `login` = ?", array('1', 'admin'));
*/
public static function query($sql, $params = array()) {
$query = self::run() -> prepare($sql);
$query -> execute($params);
return $query;
}
/**
* Считает количество записей в таблице
* Пример использования
* $result = Core::count("SELECT COUNT(*) FROM `$config[prefix]_users` WHERE `id` = ?", array('1'));
*/
public static function count($sql, $params = array()){
$count = self::query($sql, $params) -> fetch(PDO::FETCH_NUM);
return $count[0];
}
/**
* Вывод сообщений, ошибок и редирект
*/
public static function redirect($url = '/', $msg = NULL){
if($msg != NULL) $_SESSION['message'] = $msg;
header("Location: $url");
exit();
}
}
?>