![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 686 Pomógł: 0 Dołączył: 10.11.2008 Skąd: Łódź Ostrzeżenie: (20%) ![]() ![]() |
Witam,
Mam taki kawalek kodu :
Jak widac mamy tutaj taka linijke kodu :
Ktora uruchamia funkcje znajdujaca sie w innej klasie :
No i tutaj jest wszystko ok, ale teraz chce przelaczyc sie na inny mailbox (przejsc do innego widoku) w tej samej skrzynce i do tego sluzy mi taka funkcja :
Jako argument ta funkcja dostaje nazwe skrzynki zwrocony przez imap_list i lekkich modyfikacjach na stringu.... No i dostaje taki blad Cytat imap_reopen(): supplied argument is not a valid imap resource A do tego wchodzi mi w warunek if($this->_connection == false) tak jakby tracil połączenie do skrzynki....... No i teraz pytanie, czy za kazdym razem jak chce połączyc sie z inna skrzynka to musze odnawiac połączenie z serwerem ? Troche to by bylo dziwne ze musze najpierw wywolac imap_open a zaraz pozniej imap_reopen... Prosze kogos z wieksza wiedza odemnie na ten temat o podpowiedz .... Ten post edytował Wolfie 12.10.2009, 11:54:04 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Moderatorzy Postów: 8 989 Pomógł: 1550 Dołączył: 8.08.2008 Skąd: Słupsk/Gdańsk ![]() |
A może poprostu przez przypadek zamykasz gdzieś połączenie, tworzysz nową instancje twojego modelu?. Prześledź dokładnie cóż się dzieje z właściwością _connection
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 686 Pomógł: 0 Dołączył: 10.11.2008 Skąd: Łódź Ostrzeżenie: (20%) ![]() ![]() |
Fakt, w kontrolerze wywoluje metode :
ktora wyglada tak
Ktora wywoluje mi drugi raz ten sam model....ale gdy zakomentowalem linijke
To dostalem fatala : Cytat Fatal error: Call to a member function reconnect() on a non-object in
|
|
|
![]()
Post
#4
|
|
Grupa: Moderatorzy Postów: 8 989 Pomógł: 1550 Dołączył: 8.08.2008 Skąd: Słupsk/Gdańsk ![]() |
No to masz odpowiedź. Uporządkuj kod tak aby twoja klasa operowała na jednym modelu. A skoro masz taki błąd oznacza to, że model ci znikł. A dlaczego? Nie jestem w stanie stwierdzić po takiej garstce kodu, ale wiem, że ty dasz radę po powyższej poradzie.
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 686 Pomógł: 0 Dołączył: 10.11.2008 Skąd: Łódź Ostrzeżenie: (20%) ![]() ![]() |
Podrzuce wiecej kodu bo nie moge znalezc bledu, niby znika model ale gdzie ? Nie ma nigdzie w kodzie takiego kawalka ktory by za to odpowiadal, przynajmniej ja nie wiedze, moze Ty cos zobaczysz.
Tutaj plik index.php gdzie przekierowuje wszystkie rzadania :
No i teraz MainController :
Nastepnie stad przechodzi do LoginControllera ktory wywoluje metode setModel :
No i teraz klikam na nazwe innej skrzynki ktora mi przekazuje do index.php inne zmienne i wywoluje MailboxController:
No i jak zakomentuje te dwie linijki odpowiedzialne za model to wywala mi blad :
tak jakby model znikal.... Widzisz gdzie cos tu moze byc nie tak ? No i jeszcze takie pytanie , jak dlugo istnieje obiekt w aplikacji ? Ten post edytował Wolfie 12.10.2009, 13:57:43 |
|
|
![]()
Post
#6
|
|
Grupa: Moderatorzy Postów: 8 989 Pomógł: 1550 Dołączył: 8.08.2008 Skąd: Słupsk/Gdańsk ![]() |
Przy każdym wywołaniu skryptu (przeładowaniu skryptu) musisz się połączyć z imapem ponownie...
|
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 686 Pomógł: 0 Dołączył: 10.11.2008 Skąd: Łódź Ostrzeżenie: (20%) ![]() ![]() |
Czyli jedynym rozwiazaniem jest za kadym razem wywolywac imap_open a zaraz po tym imap_reopen ?
Czy moze widzisz tu jakies inne rozwiazanie ? Ten post edytował Wolfie 12.10.2009, 14:17:19 |
|
|
![]()
Post
#8
|
|
Grupa: Moderatorzy Postów: 8 989 Pomógł: 1550 Dołączył: 8.08.2008 Skąd: Słupsk/Gdańsk ![]() |
W każdym skrypcie powinieneś mieć resource dla połączenia z imapem. Nie uzyskasz go w inny sposób niż tylko przez imap_open. Wiec na każdej stronie musisz zrobić najpierw imap_open a potem imap_reopen
|
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 686 Pomógł: 0 Dołączył: 10.11.2008 Skąd: Łódź Ostrzeżenie: (20%) ![]() ![]() |
No a np poprzez przekazanie obiektu przez sesje ? nie da rady ?
|
|
|
![]()
Post
#10
|
|
Grupa: Moderatorzy Postów: 8 989 Pomógł: 1550 Dołączył: 8.08.2008 Skąd: Słupsk/Gdańsk ![]() |
Nie. Resourców nie możesz serializować. A to się właśnie dzieje przy sesji.
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 22.08.2025 - 13:15 |