![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 345 Pomógł: 3 Dołączył: 31.03.2012 Ostrzeżenie: (0%) ![]() ![]() |
Cześć,
Wciąż usiłuję stworzyć coś w rodzaju przycisku Like na stronie. Sporo czytałem o ajaxie i generalnie mam wizję jak to zrobić, o ile nie zrozumiałem czegoś źle. Posiadam pętlę wyświetlającą zdjęcia z bazy i wygląda ona tak:
Jak pewnie zauważyliście dodałem do guzików przeznaczonych do głosowania funkcję onclick, która odwołuje się do funkcji ajaxowej która wygląda tak:
Teraz stworzyłem pliki nazwane ajaxlike i ajaxdislike na serwerze, w których chciałbym umieścić skrypt php zapisujący polubienie do bazy. O ile moje zrozumienie ajaxa w ogóle jest logiczne i poprawne.... Chciałbym was zapytać, w jaki sposób w jednym z tych plików ajaxlike i ajaxdislike odnieść się do konkretnego zdjęcia? Na głównej stronie, gdzie istnieje pętla i funkcje stworzyłem zmienną w której zawarte jest ID fotki, czy mogę jakoś przesłać wartość zmiennej do pliku ze skryptem php? Ten post edytował Terrorizer 8.09.2014, 19:17:38 |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 6 806 Pomógł: 1828 Dołączył: 11.03.2014 Ostrzeżenie: (0%) ![]() ![]() |
Możesz to załatwić jednym skryptem PHP i jedną funkcją JS, gdzie dodatkowym parametrem będzie like(1)/dislike(0). EDIT: mała poprawka, oczywiście w deklaracji ajaxvotedislike też ma być parametr. Ten post edytował trueblue 8.09.2014, 19:53:32 |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 345 Pomógł: 3 Dołączył: 31.03.2012 Ostrzeżenie: (0%) ![]() ![]() |
Hmm dalej to nie działa... Klikam na przycisk i nic się nie dzieje
Przycisk wygląda tak:
funkcja tak:
a skrypt ajaxvotelike.php działa poprawnie, ponieważ wklepując ręcznie do przeglądarki np. ajaxvotelike.php?id=10 dodają się lajki EDIT: Zmienna photoid istnieje wewnątrz pętli while, która wyświetla mi zdjęcia z bazy danych. Natomiast funkcja jest w skrypcie ajaxowym w headzie strony Czytając o zasięgu zmiennych wpadłem na pomysł ,że może być to zmienna lokalna, która nie sięga do skryptu java script. Muszę jeszcze poczytać jak sobie z tym poradzić ale myślę ,że to dobry trop. Próbowałem dopisać przed zmienną słowo "global" jednak to niczego nie zmienia EDIT2: Hmmm... Przecież zmienne w javascript oznacza się jako Var a nie $ Natomiast debugger chromowy pokazuje mi unexpected token var. Ja już nie wiem co zrobić (IMG:style_emoticons/default/haha.gif) Ten post edytował Terrorizer 9.09.2014, 03:14:39 |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 6 806 Pomógł: 1828 Dołączył: 11.03.2014 Ostrzeżenie: (0%) ![]() ![]() |
http://stackoverflow.com/questions/1051245...a-double-quotes
http://php.net/string var służy do deklaracji zmiennej i wpływa na jej zasięg. Nie musisz nazywać zmienne poczynając od "$", dolar tu żadnej magii nie robi. |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 345 Pomógł: 3 Dołączył: 31.03.2012 Ostrzeżenie: (0%) ![]() ![]() |
Bardzo mi pomogłeś, siedzenie do samego rana ponownie nie przynosiło mi efektów (IMG:style_emoticons/default/tongue.gif)
Wciąż istnieje problem zmiennej, pozwolę sobie jeszcze raz opisać problem gdyby komuś nie chciało się czytać całego tematu: Mam guzik odpalający funkcję:
A funkcja uruchamia skrypt w osobnym pliku ajaxvotelike.php który wygląda tak:
Jestem niemal przekonany ,że jest to wina zmiennej, ponieważ dodając do skryptu w ajaxvotelike.php taką linijkę jak poniżej, nagle wszystko zaczyna działać?
Ten post edytował Terrorizer 9.09.2014, 10:18:50 |
|
|
![]()
Post
#6
|
|
Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Nigdzie w php nie tworzysz zmiennej $photoid to niby czemu ma ci sie sama w magiczny sposob wytrzasnac? Przeciez to ID przekazujesz GETem pod nazwą ID to i weź łaskawie stamtad je wyciągnij a nie oczekujesz ze php zrobi to samo za ciebie
|
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 345 Pomógł: 3 Dołączył: 31.03.2012 Ostrzeżenie: (0%) ![]() ![]() |
Ale czy guzik tego typu nie powinien rozwiązywać sytuacji??
Pętla wyrzuca mi kolejne zdjęcia oraz te przyciski przypisując do nich odpowiednie id które są zapisywane właśnie w tej zmiennej. Przycisk przekazuje to do funkcji, a funkcja "powinna" przekazać do skryptu php. Nie bardzo rozumiem co poszło źle
Ten post edytował Terrorizer 9.09.2014, 10:28:58 |
|
|
![]()
Post
#8
|
|
Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
A niby czemu jakis guzik w html ma rozwiązac problem nie odebrania danych z GETa (IMG:style_emoticons/default/questionmark.gif) Nie, nie rozwiązuje. W php masz odebrac dane z GETa. Same się nie odbiorą.
|
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 345 Pomógł: 3 Dołączył: 31.03.2012 Ostrzeżenie: (0%) ![]() ![]() |
Rozumiem, już szukam odpowiedzi na to zagadnienie.
Dzięki! EDIT: Udało mi się napisać bez googla, łatwiejsze niż sądziłem (IMG:style_emoticons/default/biggrin.gif) Ten post edytował Terrorizer 9.09.2014, 10:31:32 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 17.09.2025 - 08:36 |