![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 128 Pomógł: 1 Dołączył: 28.04.2005 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Witam
mam pewien problem...mianowicie w pliku .tpl mam pętle, która wyświetla zawartość tablicy (dokładniej liste komentarzy do newsa) jednak skrypt nie pobiera z bazy danych zadnych informacji o autorze komentarza ...jedynie jego ID. Musiałem więc napisać funkcje do smarty, która mając id, pobiera z bazy email i login uzytkownika. W plikach .tpl ma ona taką składnie :
W swoim serwisie korzystam z serwisu www.gravatar.com więc zainstalowałęm sobie plugina/funkcje, który mając taką składnie :
zamienia podany email na adres avatara w serwisie gravatar.com Problem w tym, że nie wiem jak połączyć te dwie funkcje. Funkcja {gravatar} musi korzystać z funkcjii {userinfo} do otrzymania emaila użytkownika a ja troche nie wiem jak to napisać ![]() ![]() ![]() Pozdrawiam i z góry dzięki Ten post edytował Bajki 10.06.2008, 13:53:00 |
|
|
![]()
Post
#2
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Ja troszke nie na temat ale...
Cytat ednak skrypt nie pobiera z bazy danych zadnych informacji o autorze komentarza ...jedynie jego ID A nie mozesz tego skryptu poprawic? Przeciez to jest szalenie nieoptymalne pobierac z bazy ID a dopiero potem robic kolejne zapytanie dla kazdego ID by pobrac reszte jego pol. -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 128 Pomógł: 1 Dołączył: 28.04.2005 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
hehe no wlasnie sie zastanawialem czy to wydajne ;D
dlamnie bomba tylko ze nie widze kompletnie jak to zrobic ;/ ledwo uporalem sie z jedna tablica a jakbym mial ja jeszcze polaczyc z 2 ... musial by mi ktos w tym pomoc ![]() oto kod : funkcja get_comments() :
tablica $comments jest przypisana do tablicy $comments w smarty (przez assign oczywiscie ![]() plik comments.tpl : jesli ktos podpowiedzial by mi jak to zrobic, bylbym bardzo wdzieczny ![]() pozdrawiam Ten post edytował Bajki 10.06.2008, 14:09:39 |
|
|
![]()
Post
#4
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
musisz do zapytania dodac kolejna tabele przy pomocy left join. Tabele oczywiscie z userami
http://dev.mysql.com/doc/refman/5.0/en/join.html -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 128 Pomógł: 1 Dołączył: 28.04.2005 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
o super, szukalem czegos takiego !
![]()
ale wywala mi błąd Cytat Something is wrong in your syntax obok '' w linii 1
|
|
|
![]()
Post
#6
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
wyswietl jeszcze to zapytanie:
I na przyszlosc zapamietaj to. -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#7
|
|
![]() Grupa: Zarejestrowani Postów: 128 Pomógł: 1 Dołączył: 28.04.2005 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
hm stworzylem taki plik :
ale on mi nic nie zwraca ![]() |
|
|
![]()
Post
#8
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
o litosci... przeciez ja tam dalem jeszcze echo $sql. a ty gdzie to dales?
tak ma byc. pozatym co skrypt nie pokazesz to ma inne dane raz jest include "includes/db_connect.php"; a raz include "db_connect.php"; co ty tak zmieniasz wszystko? -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#9
|
|
![]() Grupa: Zarejestrowani Postów: 128 Pomógł: 1 Dołączył: 28.04.2005 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
hehe no dobra teraz zwróciło
Cytat SELECT u.login, u.email, c.date, c.content FROM comments c LEFT JOIN users u ON c.user_id=u.id WHERE c.object_id='1' AND c.type='news' ORDER BY c.date czyli zasadniczo chyba okej...ale co mi to dało ? ;/edit-- to przez to ze stworzylem plik testowy w innym folderze i musialem inna sciezke w includzie podac ;D Ten post edytował Bajki 10.06.2008, 15:53:51 |
|
|
![]()
Post
#10
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Na poczatku funkcja get_comments() zwracala ci tablice komentarzy, teraz zwraca ci wynik mysql_query(). Tak ma byc?
-------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#11
|
|
![]() Grupa: Zarejestrowani Postów: 128 Pomógł: 1 Dołączył: 28.04.2005 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
tzn wynik mysql_query() czy treść zapytania ? bo jak wynik to zgadza sie
![]() przypisalem wynik funkcjii do zmiennej {$blad} no i wyswietlilem ja i otrzymalem takie cos :
Jak skopiuje to do SQL w phpmyadminie i 'wykonam' to wszystko działa okej...więc ja już naprawde nie wiem w czym jest problem ![]() |
|
|
![]()
Post
#12
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
oj...
na poczatku miales tak:
Zwracasz tu tablice komentarzy. A potem miales tak:
Tu zwraczasz zupelnie co innego. Napewno tak ma byc? -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#13
|
|
![]() Grupa: Zarejestrowani Postów: 128 Pomógł: 1 Dołączył: 28.04.2005 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Tu zwraczasz zupelnie co innego. Napewno tak ma byc? ja juz sie pogubilem w takim razie...bo ja zmodyfikowałem skrypt zgodnie z twoimi wskazówkami ... a Twoje pytanie brzmi tak jakbyś sie mnie pytał czy to co robie napewno jest okej ![]() ![]() ![]() do tego, stworzyłęm sobie kolejny plik do sprawdzenia co nie gra w tym kodzie : test.php :
no i on działa dobrze...a zapytanie jest skopiowane z funkcjii get_comments() ;/ |
|
|
![]()
Post
#14
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Cytat ja juz sie pogubilem w takim razie...bo ja zmodyfikowałem skrypt zgodnie z twoimi wskazówkami ... oj... latwo sie gubisz ![]() owszem , ja ci powiedzialem bys rozbudowal zapytanie o pobieranie userow i to zrobiles bardzo dobrze. Ale z wiadomych tylko tobie powodow wyciales kod, ktory budowal tablice i ją zwracal. Teraz po modyfikacjach ty zwracasz wynik mysql_query() a wczesniej zwracales przetworzoną juz tablice. Teraz nagle wywalies to z kodu. Rozumiesz? Po dodaniu do zapytania usera nadal masz zwracac tablice komentarzy. Tylko ta tablica ma teraz dodatkowo zawierac jeszcze info o userze ktore pobierasz juz w zapytaniu. Nie podam ci gotowego rozwiązania bo je miales a po poprawkach wyrzuciles. Musisz to zrozumiec bo to jest naprawde proste ![]() -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#15
|
|
![]() Grupa: Zarejestrowani Postów: 128 Pomógł: 1 Dołączył: 28.04.2005 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
aha no to ja zrozumialem ze mam usunac ta budowe tablicy i poprostu zwrocic tresc zapytania ;D ale nawet kiedy mialem kod tworzacy tablice to i tak miałem ten błąd ;/ (wsumie to nadal go mam bo już poprawiłem
![]() EDIT== hehe ok juz wszystko wiem. Błąd wynikał z tego, że w pliku tpl w petli probowałęm wyświetlić zawartość pola user_id a w zapytaniu w funkcji get_comments nie pobierałem wogóle tego pola z bazy ![]() nie dokońca rozumiem dlaczego akurat błąd o takiej treści ale ważne, że teraz wszystko działa ![]() Ten post edytował Bajki 12.06.2008, 15:29:21 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 19.08.2025 - 15:04 |