Показать сообщение отдельно

  #8  
Старый 04.05.2008, 00:44
Doom123
Постоянный
Регистрация: 11.11.2006
Сообщений: 834
Провел на форуме:
3941248

Репутация: 668


По умолчанию

PHP код:
<?php

/**
 * @author @FATAL@
 * @copyright 2008
 * 
 * Класс для работы с БД через новую библиотеку MySqlI
 * 
 * Пример:
 * **************************************************
 * $date = '10.5.2008';
 * $db = new DB('localhost','root','','mydb');  
 * $db->mysql_qw('UPDATE `news` SET `date`=?',$date);
 * **************************************************
 * Клас переделан из старой функции для работы с БД 
 * Безопасен и без особых наворотов, легко и просто      
 */

class DB
{
    public function 
__construct($host,$user,$db_pass,$db)
    {
         
$this->connect mysqli_connect($host,$user,$db_pass);
         
mysqli_select_db($this->connect,$db);
    }
     function 
mysql_qw()
    {
        
$this->args func_get_args();
        
$qwery $this->mysql_make_qw();
        return 
$result mysqli_query($this->connect,$qwery);
        
mysqli_free_result($result);
    }
    
private    function 
mysql_make_qw()
    {
        
$tml $this->args;
        
$tml[0] = str_replace('%','%%',$tml[0]);
        
$tml[0] = str_replace('?','%s',$tml[0]);
        foreach (
$tml as $i => $v)
        {
            if (!
$i)
            {
                continue;
            }
            if (
is_int($v))
            {
                continue;
            }
            
$tml[$i] = "'" mysqli_escape_string($this->connect,$v) . "'";
        }
        for (
$i $c count($tml) - 1$i $c 20$i++)
        {
            
$tml[$i 1] = "UNKNOWN_PLACEHOLDER_$i";
            return 
call_user_func_array("sprintf",$tml);
        }
    }

    public function 
__destruct()
    {
        
mysqli_close($this->connect);
    }
}
?>
 
Ответить с цитированием