![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 112 Pomógł: 0 Dołączył: 16.01.2008 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
Próbuje pisać swoją klasę na której chcę popracować z bazą danych. Oto ona:
Funkcję Loguj() i jakieś watości, obiekt uruchamiam tak, w osobnym pliku "loguj.php":
Zadada wydaje mi się jest ok, ale konstruktor nie inicjuje mi tych rzęczy które ma inicjować, przez to mam problem z pracą na bazie, wiadomo jak nie ma z nią połączenia to nic się nie zrobi. Jak zrobię kopiuj w klej zawartość konstruktora do funcji Loguj() to działa normalnie. Jak w PHP powinno w moim przypadku wyglądać ciało konstruktora? dzięki z góry Ten post edytował pjamorski 15.04.2010, 19:43:19 -------------------- Chęci to nie wszystko, trzeba działać. B. Lee |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 2 178 Pomógł: 596 Dołączył: 25.09.2009 Skąd: Piwniczna-Zdrój Ostrzeżenie: (0%) ![]() ![]() |
Nie _construct, ale __construct (dwa znaki podkreślenia). Wydaje mi się, że do logowania powinna służyć jednak inna klasa, której możemy przekazać instancję obiektu obsługującego bazę danych.
Poza tym takie dane jak host, nazwa użytkownika, hasło i może jeszcze nazwę bazy danych powinniśmy raczej przekazać jako parametry w konstruktorze. Dlaczego? Ano dlatego, że każdy może mieć inny host, inną nazwę użytkownika i inne hasło, a dane może przechowywać w innej tabeli. Ten post edytował mortus 15.04.2010, 19:45:46 |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 112 Pomógł: 0 Dołączył: 16.01.2008 Ostrzeżenie: (0%) ![]() ![]() |
Też nie wykonuje swojej funkcji właściwie. W dalszym ciągu ten sam problem. Wywala mi komunikat
. Jak zawartośc konstruktora jest w funkcji dziaął poprawnie. -------------------- Chęci to nie wszystko, trzeba działać. B. Lee |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 2 178 Pomógł: 596 Dołączył: 25.09.2009 Skąd: Piwniczna-Zdrój Ostrzeżenie: (0%) ![]() ![]() |
To zastąp tę linię
w funkcji Login() na: bo wygląda na to, że zapytanie się nie wykonuje, a tak dowiemy się, jaka jest przyczyna. Ten post edytował mortus 15.04.2010, 20:05:02 |
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 112 Pomógł: 0 Dołączył: 16.01.2008 Ostrzeżenie: (0%) ![]() ![]() |
Nie ma żadnego error'a. Właśnie nie wiem co jest grane.
-------------------- Chęci to nie wszystko, trzeba działać. B. Lee |
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 317 Pomógł: 58 Dołączył: 6.11.2005 Ostrzeżenie: (0%) ![]() ![]() |
-------------------- |
|
|
![]() ![]()
Post
#7
|
|
![]() Grupa: Zarejestrowani Postów: 112 Pomógł: 0 Dołączył: 16.01.2008 Ostrzeżenie: (0%) ![]() ![]() |
Tutaj mam dobrze.
Konstruktor z parametrami też zrobiłem: /
Tak go uruchamiam i tą funkcję i w dalszym ciągu to samo:
Jak zrobię tak to jest dobrze:
Normalnie zgupłem ![]() -------------------- Chęci to nie wszystko, trzeba działać. B. Lee |
|
|
![]()
Post
#8
|
|
![]() Grupa: Zarejestrowani Postów: 1 429 Pomógł: 195 Dołączył: 6.10.2008 Skąd: Kraków/Tomaszów Lubelski Ostrzeżenie: (0%) ![]() ![]() |
Ale zobacz, po co przekazujesz parametry konstruktorowi skoro potem w konstruktorze na nowo przypisujesz dane do bazy? Poza tym jeszcze
może się przydać No i przed wywołaniem metody logującej, ustaw parametry. Ten post edytował MateuszScirka 15.04.2010, 20:20:31 -------------------- O! Zimniok :P
|
|
|
![]()
Post
#9
|
|
![]() Grupa: Zarejestrowani Postów: 112 Pomógł: 0 Dołączył: 16.01.2008 Ostrzeżenie: (0%) ![]() ![]() |
Niestety dalej to samo, czyli nic. Jak powinien wyglądać konstruktor inicjujący połączenie z bazą ![]() -------------------- Chęci to nie wszystko, trzeba działać. B. Lee |
|
|
![]()
Post
#10
|
|
![]() Grupa: Zarejestrowani Postów: 317 Pomógł: 58 Dołączył: 6.11.2005 Ostrzeżenie: (0%) ![]() ![]() |
A tak:
albo i Choć to drugie to tak na słowo honoru - nie pamiętam czy działało Ten post edytował luck 15.04.2010, 20:28:51 -------------------- |
|
|
![]()
Post
#11
|
|
![]() Grupa: Zarejestrowani Postów: 112 Pomógł: 0 Dołączył: 16.01.2008 Ostrzeżenie: (0%) ![]() ![]() |
-------------------- Chęci to nie wszystko, trzeba działać. B. Lee |
|
|
![]()
Post
#12
|
|
![]() Grupa: Zarejestrowani Postów: 1 429 Pomógł: 195 Dołączył: 6.10.2008 Skąd: Kraków/Tomaszów Lubelski Ostrzeżenie: (0%) ![]() ![]() |
Najlepiej napisz do obsługi db osobną klasę lub skorzystaj z Mysqli (gotowa klasa). Ewentualnie, masz tu taki prosty przykład
-------------------- O! Zimniok :P
|
|
|
![]()
Post
#13
|
|
Grupa: Zarejestrowani Postów: 2 178 Pomógł: 596 Dołączył: 25.09.2009 Skąd: Piwniczna-Zdrój Ostrzeżenie: (0%) ![]() ![]() |
Spróbuj jeszcze tak:
|
|
|
![]()
Post
#14
|
|
![]() Grupa: Zarejestrowani Postów: 317 Pomógł: 58 Dołączył: 6.11.2005 Ostrzeżenie: (0%) ![]() ![]() |
Ja bym do klasy Mateusza dołożył jeszcze coś takiego i powinno zagadać:
-------------------- |
|
|
![]()
Post
#15
|
|
![]() Grupa: Zarejestrowani Postów: 112 Pomógł: 0 Dołączył: 16.01.2008 Ostrzeżenie: (0%) ![]() ![]() |
Teraz wywala
Funcja . mysql_error()); przynajmniej zadziałała. Nazwa bazy jest poprawna. W dalszym ciągu nie działa. -------------------- Chęci to nie wszystko, trzeba działać. B. Lee |
|
|
![]()
Post
#16
|
|
![]() Grupa: Zarejestrowani Postów: 317 Pomógł: 58 Dołączył: 6.11.2005 Ostrzeżenie: (0%) ![]() ![]() |
Wiesz, może wklej jak to teraz u Ciebie wygląda, bo się powoli pogubimy...
-------------------- |
|
|
![]()
Post
#17
|
|
![]() Grupa: Zarejestrowani Postów: 112 Pomógł: 0 Dołączył: 16.01.2008 Ostrzeżenie: (0%) ![]() ![]() |
Klasa:
plik loguj.php
Ten post edytował pjamorski 15.04.2010, 20:50:45 -------------------- Chęci to nie wszystko, trzeba działać. B. Lee |
|
|
![]()
Post
#18
|
|
Grupa: Zarejestrowani Postów: 2 178 Pomógł: 596 Dołączył: 25.09.2009 Skąd: Piwniczna-Zdrój Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#19
|
|
![]() Grupa: Zarejestrowani Postów: 112 Pomógł: 0 Dołączył: 16.01.2008 Ostrzeżenie: (0%) ![]() ![]() |
To dostalem w odpowiedzi:
-------------------- Chęci to nie wszystko, trzeba działać. B. Lee |
|
|
![]()
Post
#20
|
|
Grupa: Zarejestrowani Postów: 2 178 Pomógł: 596 Dołączył: 25.09.2009 Skąd: Piwniczna-Zdrój Ostrzeżenie: (0%) ![]() ![]() |
A testujesz to na hostingu, czy na localhoscie? Jeśli na localhoście, to czy na pewno na PHP 5, bo Krasnal Serv może się przełączać pomiędzy PHP4... i PHP5.0.2.
Z wydruku z powyższego postu wnioskuję, że obiekt nie jest w ogóle tworzony, po prostu go nie ma. Dlatego stawiam na to, że masz włączone PHP4.3.9. |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 31.07.2025 - 10:27 |