Menu
- Aktualności
- Mój startup Nowy odcinek
- Blogi ekspertów
- Projektowanie WWW
- Planowanie
- Hosting i domeny
- Organizacja i nawigacja
- Webdesign i grafika
- Warsztat - programy
- Tutoriale Photoshop
- Programowanie i tworzenie
- XHTML, HTML i CSS
- JavaScript, DOM i AJAX
- jQuery
- PHP i SQL
- Flash i ActionScript
- Dostępność i WAI
- Promowanie stron
- Pozycjonowanie
- Reklama i marketing
- Monitoring i statystyki
- Publicystyka
- Artykuły ogólne
- Społeczności
- Praca i zarabianie
- Wywiady
- Standardy sieciowe
- Zasoby
- Kursy
- Recenzje książek
- Linki
Dla webmastera
MySQL w PHP, cz. 4
Autor: Łukasz Świerżewski, dodano: 01-11-2004
Kategoria: Programowanie i tworzenie
Zamieszczone, w tym tekście zagadnienia będą odnosiły się do elementów zawartych w poprzednich częściach artykułu, a zatem zalecam zapoznać się z nimi.
Jak wiadomo, wszelkie błędy popełnione podczas korzystania z funkcji obsługi MySQL, nie zawsze ukazują się samoczynnie tak, jak w przypadku błędów PHP. Wynikają z tego powodu pewne korzyści, ale są także wady. Dzięki temu nie musimy się martwić o rażące po wejściu na stronę komunikaty o skomplikowanej formule. Z kolei mamy problem ze zlokalizowaniem błędu. Z pomocą przychodzą nam wspomniane już wcześniej funkcje mysql_error() oraz mysql_errno(). Ich połączenie umożliwi nam konstruowanie i przetwarzanie komunikatów błędów zwracanych podczas nieprawidłowego korzystania z funkcji obsługi bazy danych MySQL.
Poniżej przedstawiam często wyświetlane informacje wywołujące problemy:
Problem ten może zaistnieć, gdy próbujemy nawiązać połączenie z hostem, który nie istnieje lub nie może być zlokalizowany. Neutralizacja tego błędu ogranicza się tylko do sprawdzenia poprawności nazwy serwera w funkcji mysql_connect(), z którym się łączymy w celu uzyskania dostępu do bazy danych.
Komunikat taki ujawni się nam, gdy podczas próby połączenia się z hostem w funkcji mysql_connect(), podamy nieprawidłową nazwę użytkownika lub hasło. W celu usunięcia usterki, wystarczy sprawdzić czy podane dane zostały poprawnie wpisane lub czy mamy dostęp do bazy danych. Problem może także wystąpić, gdy dany użytkownik nie posiada uprawnień do korzystania z wybranej bazy danych.
Po nawiązaniu połączenia z bazą danych następuje kolej wybrania jednej z dostępnych baz. Posługujesz się ku tym celom funkcją mysql_select_db(). Tytułowy komunikat błędu ujawni się, gdy wprowadzona przez Ciebie w pierwszym argumencie nazwa bazy nie istnieje. Należy upewnić się czy dane są wprowadzone poprawnie i jeśli nie to poprawić wpis.
Kolejny opisywany błąd powstaje, gdy w wymagających tego funkcjach podamy błędną nazwę identyfikatora połączenia z bazą danych. Najczęściej jest to argument opcjonalny, dlatego dla mniej doświadczonych nie zaleca się stosowania, w celu uniknięcia pomyłek. Najlepszym rozwiązaniem jest korzystanie z takich samych standardowych nazw zmiennej przechowującej nazwę owego połączenia. W ten sposób nie mylą się nam zmienne, co eliminuje omawiany problem.
Podobną treść mogą mieć także komunikaty błędów, w których na skutek poprzedzających wad konstrukcji kodu, do funkcji przekazywane są nieprawidłowe dane, np. jeśli podczas wybrania nie właściwej tabeli dane nie są pobierane. Gdy w następnej kolejność skorzystamy z funkcji mysql_num_rows(), przekazywany parametr nie zawiera informacji przekazywanych w wywołaniu funkcji mysql_query(), co tworzy konflikt. Warto zatem sprawdzić, czy aby na pewno dane są poprawnie określane.
Komunikat ten ujrzymy, gdy próbujemy wykonać jakąkolwiek operację, na tabeli, która nie istnieje. Jak widać na przykładzie, w błędzie zwracana jest nazwa tabeli, z której próbujemy skorzystać. W celu neutralizacji tego problemu, należy tak jak w poprzednich przykładach sprawdzić poprawność danych oraz czy podana tabela istnieje w bazie, z której aktualnie korzystasz.
Problem ten pojawi się, gdy w naszych zapytaniach do bazy danych odwołujemy się do nazwy kolumny, która nie istnieje. Naprawa skupia się na poprawieniu konstrukcji zapytania.
Powyżej przedstawione zostały najczęstsze komunikaty błędów, z jakimi możesz się spotkać podczas korzystania z bazy danych MySQL. Jak widać ich interpretacja nie jest zbyt trudna jeśli zna się język angielski. Zapewne istnieją także i inne, rzadziej spotykane, błędy. Jeśli się z nimi spotkasz to napisz do mnie, a na pewno przyjże się temu bliżej i opisze problem.
Komentarze:
Dodaj komentarz:
Najlepiej oceniane artykuły
Najnowsze wiadomości
- Programista (nadal) pilnie poszukiwany
- Już jest nowy Firefox i pierwsze komercyjne gry sieciowe
- Aplikacja SkyCash zyskuje na popularności
- Sprawdzony hosting i domena .eu
- Stwórz aplikację w 24h i poleć do Doliny Krzemowej
- Polacy wciąż łatwym celem dla cyberprzestępców
- Inspirujący Netcamp o e-biznesie
- Nowości Heliona: książki o e-biznesie i nie tylko