![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 105 Pomógł: 0 Dołączył: 17.09.2014 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Jak w temacie, potrzebuję przesłać tablicę do php. Znalazłam w googlach jakiś wzór i zrobiłam to według niego, ale nie wiem, czy instrukcje były złe, czy po prostu ja je źle zastosowałam... Może skopiuję kod java script:
Więc otwieram plik moduly.php, w którym jest taki kod (na razie tylko do testów):
A tam puściutko! wyświetlają się tylko 'stringi', nie ma żadnych wartości pod tymi zmiennymi. Gdzie tu może być błąd? Pewnie jest to jakiś głupi błąd, ale niestety sama z tym sobie chyba nie poradzę :/ |
|
|
![]()
Post
#2
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Cytat Więc otwieram plik moduly.php A jak ty go otwierasz?
-------------------- "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: 197 Pomógł: 24 Dołączył: 22.11.2010 Ostrzeżenie: (0%) ![]() ![]() |
Najlepiej to zamiast echo daj var_dump($boxorder1); to dowiesz się dokładnie, co tam jest.
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 105 Pomógł: 0 Dołączył: 17.09.2014 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
1) za pomocą include
2) za pomocą wpisania adresu efekt ten sam. var_dump($boxorder1); == NULL |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 197 Pomógł: 24 Dołączył: 22.11.2010 Ostrzeżenie: (0%) ![]() ![]() |
No ale to przecież tak nie zadziała, bo moduly.php wygenerują coś dopiero po wysłaniu danych przez JS, a nie w trakcie generowania strony.
Są tylko 2 sposoby. 1) Pobierzesz odpowiedź PHP w trakcie wysyałania $.post i wyświetlisz przez JS. 2) Plik moduly.php zapisuje otrzymaną odpowiedź (w pliku, sesji, ciastku) i przy kolejnym odświeżeniu pobiera tę zawartość. |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 105 Pomógł: 0 Dołączył: 17.09.2014 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
a da się wysyłać $.post "na bieżąco"? Chodzi o to, że to nie jest formularz, tylko ktoś sobie przestawia boxy jak tylko chce i przy kolejnym zalogowaniu ma je mieć tak samo, jak miał przy wylogowaniu. Wiem, że przede mną jeszcze długa droga do takiego efektu, ale chodzi o to, żeby te dane byly przesyłane w momencie, gdy ktoś przesunie box.
|
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 197 Pomógł: 24 Dołączył: 22.11.2010 Ostrzeżenie: (0%) ![]() ![]() |
W takim razie powinno wystarczyć, że zapiszesz w moduly.php kolejność do ciasteczka, lub jeśli chcesz bardziej "pro" do bazy danych (ciasteczko po jakimś czasie znika, baza danych nie)
natomiast musisz jeszcze opracować sobie samo generowanie kolejności w HTML na podstawie tych danych. |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 105 Pomógł: 0 Dołączył: 17.09.2014 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
jakiś pomysł na generowanie kolejności już mam, ale na razie nie mam jeszcze z czego tego generować
![]() jakbyście mi podpowiedzieli, jak tą tablicę przesłać z javascript do php - bardzo by mi to ułatwiło... Może ta metoda JSON wcale nie jest poprawna? W jakimś przykładzie w googlach to widziałam, ale w manualu nie mogę znaleźć niczego podobnego... Ten post edytował muumiin 11.12.2014, 21:41:33 |
|
|
![]()
Post
#9
|
|
![]() Grupa: Zarejestrowani Postów: 380 Pomógł: 59 Dołączył: 24.04.2010 Skąd: London Ostrzeżenie: (0%) ![]() ![]() |
po 1
jeżeli chcesz tworzyć JSONa ze stringa no to nie tędy droga
powinno być tak po 2 czy twoje elementy do sortable posiadają atrybuty ID w htmlu? jeżeli nie to masz pustą tablicę już w samym jsie
Jeżeli natomiast, jak napisałeś sam w komentarzu tablica wyswietla się no to tak zgodzę się ale wyświetla się string a ty w prubujesz zrobić kolejny
Ten post edytował lord2105 11.12.2014, 21:59:00 -------------------- |
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 105 Pomógł: 0 Dołączył: 17.09.2014 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
sama funkcja działa dobrze, mam id w htmlu.
Może przypomnę pytanie. Chodzi mi tylko o to, potrzebuję zapisać te dane gdzieś na serwerze lub w bazie danych, a to można zrobić tylko z poziomu php. Ktoś na jakimś forum napisał, że aby przesłać dane do pliku php używa się metody JSON, ale to nie działa. Może to trzeba zrobić całkiem inaczej? Dziś coś czytałam o AJAXie, ale jak na razie w ogóle nie ogarniam... |
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 6 799 Pomógł: 1827 Dołączył: 11.03.2014 Ostrzeżenie: (0%) ![]() ![]() |
Z Twojego pierwszego postu wynika, że konwertujesz tablicę do stringa, po czym chcesz tego stringa zamienić w stringa za pomocą JSON.stringify.
-------------------- |
|
|
![]()
Post
#12
|
|
Grupa: Zarejestrowani Postów: 197 Pomógł: 24 Dołączył: 22.11.2010 Ostrzeżenie: (0%) ![]() ![]() |
Kod Dziś coś czytałam o AJAXie, ale jak na razie w ogóle nie ogarniam... Tak naprawdę Twoje wcześniejsze $.post() to nic innego jak skrót od $.ajax(), i obie korzystają właśnie z ajaxa ![]() Sam pomysł z jsonem nie jest zły, ale podejrzewam, że podobnie sprawiłby się serialize(), które możesz wysłać i odczytywać jako tablica $_POST. |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 12.06.2025 - 11:06 |