Il global $DB dovevi metterlo prima dell'utilizzo della classe in miapagina.php

...comunque...

Così è come lo trasformerei io, poi ci sono altri modi

index.php
Codice PHP:
<?php
/****************************************************************************
# RICHIAMO CLASSI
*****************************************************************************/

# recupero il file per la gestione del database
require('./Class/database.php');
# recupero il file per la gestione delle visite
require('./Class/visite.php');

/****************************************************************************
# CONNESSIONE AL DATABASE ED ESTRAZIONE SITO ON-OFF
*****************************************************************************/

# apro la classe per il database
$DB = new DB();
# mi connetto al database
$DB->connect();  

# prendo l'header
include ('header.php');
# prendo la pagina
include ('miapagina.php');
# prendo il footer
include('footer.php');
?>
header.php
Codice PHP:
<?php
/*

QUI ALTRE OPERAZIONI....

*/ 
?>
miapagina.php
Codice PHP:
<?php
/*

CLASSE PER IL CONTEGGIO E L'INSERIMENTO DEI VISITATORI

*/

class visiteAndUser
{
# indirizzo ip
var $ip;
# provenienza
var $provenienza;
# sistema operativo
var $sistema;

    function 
visiteAndUser(){
         global 
$DB;

         
// questo db è quello dell'header.php!!! ma non funziona
        
$DB->query("SELECT id FROM visite WHERE ip_address = '$this->ip'");
        [...]
        }
}
?>