Loading...
SlavaLegend (12.01.2019 в 00:33)
KING_SysTEM , ставлю пхп 7.3 7.2 7.1 не роботает

Ты же только мой первый пост(код клас) всунул или все сразу?
KING_SysTEM , это вся ошибка
KING_SysTEM , только первый пост
SlavaLegend (12.01.2019 в 00:40)
KING_SysTEM , только первый пост


<?php
class DB
{
public static $dsn = 'mysql:dbname=table;host=localhost';
public static $user = 'user';
public static $pass = 'password';

/**
* Объект PDO.
*/
public static $dbh = null;

/**
* Statement Handle.
*/
public static $sth = null;

/**
* Выполняемый SQL запрос.
*/
public static $query = '';

/**
* Подключение к БД
*/
public static function getDbh()
{
if (!self::$dbh) {
try {
self::$dbh = new PDO(
self::$dsn,
self::$user,
self::$pass,
array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES 'utf8'")
);
self::$dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_WARNING);
} catch (PDOException $e) {
exit('Error connecting to database: ' . $e->getMessage());
}
}

return self::$dbh;
}

/**
* Добавление в таблицу, в случаи успеха вернет вставленный ID, иначе 0.
*/
public static function add($query, $param = array())
{
self::$sth = self::getDbh()->prepare($query);
return (self::$sth->execute((array) $param)) ? self::getDbh()->lastInsertId() : 0;
}

/**
* Выполнение запроса.
*/
public static function set($query, $param = array())
{
self::$sth = self::getDbh()->prepare($query);
return self::$sth->execute((array) $param);
}

/**
* Получение строки из таблицы.
*/
public static function getRow($query, $param = array())
{
self::$sth = self::getDbh()->prepare($query);
self::$sth->execute((array) $param);
return self::$sth->fetch(PDO::FETCH_ASSOC);
}

/**
* Получение всех строк из таблицы.
*/
public static function getAll($query, $param = array())
{
self::$sth = self::getDbh()->prepare($query);
self::$sth->execute((array) $param);
return self::$sth->fetchAll(PDO::FETCH_ASSOC);
}

/**
* Получение значения.
*/
public static function getValue($query, $param = array(), $default = null)
{
$result = self::getRow($query, $param);
if (!empty($result)) {
$result = array_shift($result);
}

return (empty($result)) ? $default : $result;
}

/**
* Получение столбца таблицы.
*/
public static function getColumn($query, $param = array())
{
self::$sth = self::getDbh()->prepare($query);
self::$sth->execute((array) $param);
return self::$sth->fetchAll(PDO::FETCH_COLUMN);
}
}
?>


Скинь то что у тебя в файле
SlavaLegend (12.01.2019 в 00:40)
KING_SysTEM , только первый пост

В самом классе ошибки нету
KING_SysTEM , <?php
class DB
{
    public static $dsn = 'mysql:dbname=slavadziubko;host=localhost';
    public static $user = 'futurecm';
    public static $pass = 'Naitep624837';

    /**
     * Объект PDO.
     */
    public static $dbh = null;

    /**
     * Statement Handle.
     */
    public static $sth = null;

    /**
     * Выполняемый SQL запрос.
     */
    public static $query = '';

    /**
     * Подключение к БД
     */
    public static function getDbh()
    {    
        if (!self::$dbh) {
            try {
                self::$dbh = new PDO(
                    self::$dsn, 
                    self::$user, 
                    self::$pass, 
                    array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES 'utf8'")
                );
                self::$dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_WARNING);
            } catch (PDOException $e) {
                exit('Error connecting to database: ' . $e->getMessage());
            }
        }

        return self::$dbh; 
    }

    /**
     * Добавление в таблицу, в случаи успеха вернет вставленный ID, иначе 0.
     */
    public static function add($query, $param = array())
    {
        self::$sth = self::getDbh()->prepare($query);
        return (self::$sth->execute((array) $param)) ? self::getDbh()->lastInsertId() : 0;
    }
    
    /**
     * Выполнение запроса.
     */
    public static function set($query, $param = array())
    {
        self::$sth = self::getDbh()->prepare($query);
        return self::$sth->execute((array) $param);
    }
    
    /**
     * Получение строки из таблицы.
     */
    public static function getRow($query, $param = array())
    {
        self::$sth = self::getDbh()->prepare($query);
        self::$sth->execute((array) $param);
        return self::$sth->fetch(PDO::FETCH_ASSOC);        
    }
    
    /**
     * Получение всех строк из таблицы.
     */
    public static function getAll($query, $param = array())
    {
        self::$sth = self::getDbh()->prepare($query);
        self::$sth->execute((array) $param);
        return self::$sth->fetchAll(PDO::FETCH_ASSOC);    
    }
    
    /**
     * Получение значения.
     */
    public static function getValue($query, $param = array(), $default = null)
    {
        $result = self::getRow($query, $param);
        if (!empty($result)) {
            $result = array_shift($result);
        }

        return (empty($result)) ? $default : $result;    
    }
    
    /**
     * Получение столбца таблицы.
     */
    public static function getColumn($query, $param = array())
    {
        self::$sth = self::getDbh()->prepare($query);
        self::$sth->execute((array) $param);
        return self::$sth->fetchAll(PDO::FETCH_COLUMN);    
    }

?>
SlavaLegend , пробуй

<?php
class DB
{
public static $dsn = 'mysql:dbname=slavadziubko;host=localhost';
public static $user = 'futurecm';
public static $pass = 'Naitep624837';

/**
* Объект PDO.
*/
public static $dbh = null;

/**
* Statement Handle.
*/
public static $sth = null;

/**
* Выполняемый SQL запрос.
*/
public static $query = '';

/**
* Подключение к БД
*/
public static function getDbh()
{
if (!self::$dbh) {
try {
self::$dbh = new PDO(
self::$dsn,
self::$user,
self::$pass,
array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES 'utf8'")
);
self::$dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_WARNING);
} catch (PDOException $e) {
exit('Error connecting to database: ' . $e->getMessage());
}
}

return self::$dbh;
}

/**
* Добавление в таблицу, в случаи успеха вернет вставленный ID, иначе 0.
*/
public static function add($query, $param = array())
{
self::$sth = self::getDbh()->prepare($query);
return (self::$sth->execute((array) $param)) ? self::getDbh()->lastInsertId() : 0;
}

/**
* Выполнение запроса.
*/
public static function set($query, $param = array())
{
self::$sth = self::getDbh()->prepare($query);
return self::$sth->execute((array) $param);
}

/**
* Получение строки из таблицы.
*/
public static function getRow($query, $param = array())
{
self::$sth = self::getDbh()->prepare($query);
self::$sth->execute((array) $param);
return self::$sth->fetch(PDO::FETCH_ASSOC);
}

/**
* Получение всех строк из таблицы.
*/
public static function getAll($query, $param = array())
{
self::$sth = self::getDbh()->prepare($query);
self::$sth->execute((array) $param);
return self::$sth->fetchAll(PDO::FETCH_ASSOC);
}

/**
* Получение значения.
*/
public static function getValue($query, $param = array(), $default = null)
{
$result = self::getRow($query, $param);
if (!empty($result)) {
$result = array_shift($result);
}

return (empty($result)) ? $default : $result;
}

/**
* Получение столбца таблицы.
*/
public static function getColumn($query, $param = array())
{
self::$sth = self::getDbh()->prepare($query);
self::$sth->execute((array) $param);
return self::$sth->fetchAll(PDO::FETCH_COLUMN);
}
}
?>

Ты } потерял
KING_SysTEM , А как использовать fetchColumn()? Цикл while
________
посл. ред. 12.01.2019 в 01:18; всего 1 раз(а); by TuT
TuT , <?php
//получения значения колонки
$values = DB::getColumn("SELECT `name` FROM `category`");
print_r($values);
// ну и остальные запросы update,delete...
DB::set("DELETE FROM `category` WHERE `id` > ? AND `parent` > ?", array(123, 0));
?>

________
посл. ред. 12.01.2019 в 01:23; всего 1 раз(а); by KING_SysTEM
KING_SysTEM , То есть, ты к каждому запросу уже присваиваешь метод?
Онлайн: 6
Время:
Gen. 0.1294
(c) Bym.Guru 2010-2026