Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP]Obsługa błedów mysqli
Forum PHP.pl > Forum > Przedszkole
Woytek950
Witam. Dlaczego po podaniu złych parametrów półączenia nie zwaraca błędu?? (tak wiem, jest @ przed zapytaniem, próbuje stworzyć obsługę błędów)
Kod
<?php

    class Database{      
        private $connection;
        
        
        
        /**************************/
        /*    Konstruktor klasy   */
        /**************************/        
        
        function __construct($host, $user, $pass, $name){
          if(@!$this->connection = new mysqli($host, $user, $pass, $name)){
            
                throw new Exception("Nie udało się połączyć z sewerem ".$this->connection->error, $this->connection->errno);      
          }
        }
        
    }  
            
    $host="localhosts";
    $user="test";
    $pass="test1";
    $name="test";    
    
    $connection = new Database($host, $user, $pass, $name);
?>
zielu001
  1. $this->connection->connect_errno
Nie działa!?questionmark.gif

  1. $this->connection = new mysqli($host, $user, $pass, $name);
  2. if($this->connection->connect_errno) throw new Exception("Nie udało się połączyć z sewerem ".$this->connection->error, $this->connection->errno);
  3.  


I ludzie.. po co używacie @? Ehh.. Nie ważne..
Woytek950
Właściwie to jak ma mi te błędy wyświetlić? sam nie wiem. Jest tak jak było. Myślałem że "throw new Exception" służy do czytelnego wyświetlania blędów, a zapytanie się małpuje @.
wNogachSpisz
Walka z funkcjami mysql_* nie da Ci żadnego skilla.
Zdolni progamiści napisali całą masę biblitek które od funkcji mysql_* odgradzają cię kilkoma warstwami abstrakcji. Np. Codeigniter->activeRecords: http://ellislab.com/codeigniter/user-guide...ive_record.html

Polecam zacząć korzystać zamiast marnować czas na pielęgnowanie słabego kodu.
Przynajmniej czegoś się nauczysz.
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.