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

  #6  
Старый 21.01.2010, 22:14
b3
Постоянный
Регистрация: 05.12.2004
Сообщений: 647
С нами: 11278406

Репутация: 818


По умолчанию

Класс для работы с MySQL:
PHP код:
<?php

class db
{
    var 
$db_id false;
    var 
$query_num 0;
    var 
$query_list = array();
    var 
$mysql_error '';
    var 
$mysql_error_num 0;
    var 
$MySQL_time_taken 0;
    
    function 
connect($db_user$db_pass$db_name$db_location 'localhost'$show_error=1)
    {
        if(!
$this->db_id = @mysql_connect($db_location$db_user$db_pass))
        {
            if(
$show_error == 1$this->display_error(mysql_error(), mysql_errno());
            else                 return 
false;
        } 

        if(!@
mysql_select_db($db_name$this->db_id))
        {
            if(
$show_error == 1$this->display_error(mysql_error(), mysql_errno());
            else                 return 
false;
        }

        return 
true;
    }
    
    function 
query($query$show_error=true)
    {

        if(!
$this->db_id$this->connect(DBUSERDBPASSDBNAMEDBHOST);
        
        if(!(
$result mysql_query($query$this->db_id) ))
        {
            
$this->mysql_error mysql_error();
            
$this->mysql_error_num mysql_errno();
            
            if(
$show_error$this->display_error($this->mysql_error$this->mysql_error_num$query);
        }
        
        
$this->query_num ++;

        return 
$result;
    }
    
    function 
get_row($query_result)
    {
        return 
mysql_fetch_assoc($query_result);
    }

    function 
get_array($query_result)
    {
        return 
mysql_fetch_array($query_result);
    }
    
    
    function 
super_query($query$multi false)
    {
        if(!
$this->db_id$this->connect(DBUSERDBPASSDBNAMEDBHOST);

        if(!
$multi) return $this->get_row($this->query($query));
        else
        {
            
$query_result $this->query($query);
            
            
$rows = array();
            while(
$row $this->get_row($query_result))
            {
                
$rows[] = $row;
            }
            
            return 
$rows;
        }
    }
    
    function 
num_rows($query_result)
    {
        return 
mysql_num_rows($query_result);
    }
    
    function 
insert_id()
    {
        return 
mysql_insert_id($this->db_id);
    }

    function 
get_result_fields($result)
    {
        while (
$field mysql_fetch_field($result))
        {
            
$fields[] = $field;
        }
        
        return 
$fields;
    }

    function 
close()
    {
        @
mysql_close($this->db_id);
    }
    
    function 
display_error($error$error_num$query '')
    {
        if(
$query)
        {
            
$query preg_replace("/([0-9a-f]){32}/""********************************"$query);
            
$query_str "$query";
        }
        
        echo 
'<?xml version="1.0" encoding="iso-8859-1"?>
        <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
        <html xmlns="http://www.w3.org/1999/xhtml">
        <head>
        <title>MySQL Fatal Error</title>
        <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
        <style type="text/css">
        <!--
        body {
            font-family: Verdana, Arial, Helvetica, sans-serif;
            font-size: 10px;
            font-style: normal;
            color: #000000;
        }
        -->
        </style>
        </head>
        <body>
            <font size="4">MySQL Error!</font> 
            <br />------------------------<br />
            <br />
            
            <u>The Error returned was:</u> 
            <br />
                <strong>'
.$error.'</strong>

            <br /><br />
            </strong><u>Error Number:</u> 
            <br />
                <strong>'
.$error_num.'</strong>
            <br />
                <br />
            
            <textarea name="" rows="10" cols="52" wrap="virtual">'
.$query_str.'</textarea><br />

        </body>
        </html>'
;
        
        exit();
    }
}

?>
 
Ответить с цитированием