Info o ciastkach

Eeee...
Żeby strona działała fajnie to trzeba zaakceptować obsługę pewnych plików. Jeśli jesteś nienormalny, nosisz czapkę z amelinium i siedzisz w schronie zbudowanym z poduszek to możesz je sobie wyłączyć. Autor strony nie czerpie żadnych korzyści z cookies (twierdzi nawet, że ten komunikat jest głupi), ale, cóż - Unia wymaga. Korzystając z witryny zgadzasz się z polityką cookies.

Wszystko w budowie...

Przechodzimy na PDO

logo php

PDO czyli PHP Data Objects to interfejs dzięki któremu możemy komunikować się z bazami danych. Plusem jest to, że kod taki nie zmienia się nawet gdy w grę wchodzą różne systemy baz danych. Jeden problem z głowy. Drugi - kod jest krótszy i bardziej czytelny.

Zerknijmy na taką pokrakę



public function odczytaj_poId($id){
    $this->aDane['id']=$id;
    $sql = "SELECT * FROM artykuly WHERE id=".$this->aDane['id'].";";
    try{
        $polaczenie = new mysqli(HOST, DB_GUEST, DB_PASSWORD_GUEST, DB_NAME);
        if ($polaczenie->connect_errno!=0){
            throw new Exception(mysqli_connect_errno());
        } else {
            $result = $polaczenie->query($sql);
            while ($row = $result->fetch_assoc()){
                $this->aDane=$row;
            }
            $polaczenie->close();
        }
    } catch (Exception $ex){
        echo 'Błąd połączenia nr '.$ex;
    }
}

A teraz z użyciem PDO



public function odczytaj_poId($id){
    $this->aDane['id']=$id;
    $sql = "SELECT * FROM artykuly WHERE id=".$this->aDane['id'].";";
    try {
        $pdo=new PDO('mysql:host='.HOST.';dbname='.DB_NAME,DB_GUEST, DB_PASSWORD_GUEST );
        $result=$pdo->query($sql);
        foreach ($result as $value){
            $this->aDane=$value;
        }
        $result->closeCursor();
    } catch (PDOException $ex) {
        echo 'Błąd połączenia '.$ex->getMessage();
    }
}

Oczywiście pętli while i foreach użyłem zamiennie i nie ona nas obchodzi. Jak widać błąd połączenia jest również obiektem. Do tego nie trzeba się okopywać za if'ami, które dodatkowo zaciemniają kod. No i w zasadzie tyle. Stosujcie podejście obiektowe i ....eee, myjcie ząbki.

Komentarze (0)

Nikt jeszcze nie dodał komentarza. Możesz być pierwszy.

Napisz komentarz lub zgłoś błąd

Dodane w dniu 8 stycznia 2016 przez Michał Misztal
Kopiowanie powyższych wypocin dozwolone pod warunkiem podania źródła, znaczy tandemu autor + link do strony