Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Sprawdzenie połączenia z bazą
Forum PHP.pl > Forum > Bazy danych > MySQL
morawcik89
Witam.
Buduję sobie klasę do obsługi bazy danych. Zaczynam od sprawdzania czy można się połączyć i czy można wybrać bazę.
Kod
class Baza
{
    public $status = 0;
    private $host = 'localhost';
    private $urzytkownik = 'user';
    private $haslo = 'pass';
    private $baza = 'db';
    
    function SprawdzPolaczenie()
    {
        if(!mysql_connect($this->host, $this->urzytkownik, $this->haslo))
        {
            return 'niepolaczono';
            break;
        }
        else return 'polaczono';
    }
    
    function SprawdzWybieranie()
    {    
        if(!mysql_select_db($this->baza))
        {
            return 'niewybrano';
            break;
        }
        else return 'wybrano';
    }
}

a w pliku index odpowiednio wywołuję:
Kod
include 'klasa/baza.php';
$baza = new Baza();
if($baza->SprawdzPolaczenie() == 'niepolaczono') $baza->status = 2;
else if($baza->SprawdzWybieranie() == 'niewybrano') $baza->status = 3;
else $baza->status = 1;
if($baza->status > 1)
{
    include 'widok/blad.php';
    $widok = new Widok('baza'.$baza->status);
}else
{
    //dalsza część skryptu
}


Chcę tym sposobem (w razie braku połączenia lub niemożliwości wybrania bazy) uniknąć wyświetlania samego teksu a załadować stronę z wyświetlającą komunikat o błędzie. Niestety w razie różnych manipulacji (podmienione parametry połączenia z bazą itp) pojawia się komunikat z fatal errorem.
Jak temu zaradzić ?
bounty
  1. <?php
  2. if(!@mysql_connect('host','user','haslo')){
  3. return 'niepolaczono';
  4. } else {
  5. return 'polaczono';
  6. }
  7. ?>


znak "@" powoduje to że php nie wywala błędu ...
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.