![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 138 Pomógł: 0 Dołączył: 1.08.2006 Skąd: Kielce Ostrzeżenie: (0%) ![]() ![]() |
Witam!
Przymusowo zapoznaje się z frameworkiem jQuery, ponieważ wykorzystuje go do pewnego projektu. Po woli odkrywam potencjał tego skryptu, jednak nadal mam z nim problemy. Zatrzymałem się na prostej sprawie, mianowicie. Zależy mi, aby móc przekazac dane do sesji. Mam taki skrypt w js:
w phpie prosto bym to zrobił: $_SESSION['xxx'] = 'asd'; w js nie mam pojecia! ![]() Jeśli się nie da, to jak za pomocą jQuery przesłac zmieną do phpa? Wypełnienie sesji zrobie sobie w php Czekam na odp, pozdr |
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Moderatorzy Postów: 8 989 Pomógł: 1550 Dołączył: 8.08.2008 Skąd: Słupsk/Gdańsk ![]() |
W javascript sie nie da.
A do phpa masz setki sposobów Ajaxem, w ciasteczkach. Jednakże bedziesz musial ostro zadbac o filtrowanie tych danych. -------------------- |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 138 Pomógł: 0 Dołączył: 1.08.2006 Skąd: Kielce Ostrzeżenie: (0%) ![]() ![]() |
Tak sobie myśle, a gdyby Ajaxem przez POST?
Za bardzo nie znam sie na js. Jak to można wykonac? |
|
|
![]()
Post
#4
|
|
![]() Grupa: Moderatorzy Postów: 8 989 Pomógł: 1550 Dołączył: 8.08.2008 Skąd: Słupsk/Gdańsk ![]() |
Mozesz ajaxem przez posta. W jquery masz ajaxa. Poczytaj sobie jego dokumentacje. Tam wszystko pisze.
-------------------- |
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 138 Pomógł: 0 Dołączył: 1.08.2006 Skąd: Kielce Ostrzeżenie: (0%) ![]() ![]() |
http://docs.jquery.com/Ajax/jQuery.post
Nic a nic mi to nie mówi ![]() Kod $.post("index.php", { 'name': "John"} ); tak się definiuje zmieną POSt? |
|
|
![]()
Post
#6
|
|
![]() Grupa: Moderatorzy Postów: 8 989 Pomógł: 1550 Dołączył: 8.08.2008 Skąd: Słupsk/Gdańsk ![]() |
Kod $.post("index.php", { 'name': "John"} , function(data){ // tutaj piszesz swoj kod dalszej obslugi }); no i teraz w php zmienna Kod $_POST['name'] bedzie miala wartosc john -------------------- |
|
|
![]()
Post
#7
|
|
![]() Grupa: Zarejestrowani Postów: 138 Pomógł: 0 Dołączył: 1.08.2006 Skąd: Kielce Ostrzeżenie: (0%) ![]() ![]() |
Nie działa, zrobiłęm to samo co Ty...
![]() dzięki za cierpliwośc ![]() |
|
|
![]()
Post
#8
|
|
![]() Grupa: Moderatorzy Postów: 8 989 Pomógł: 1550 Dołączył: 8.08.2008 Skąd: Słupsk/Gdańsk ![]() |
Co masz w konsoli błędow javascript?
(najlepiej pokazuje to dodatek firebug w firefoxie). I jak ty to uruchamiasz? daj lepiej link do strny. -------------------- |
|
|
![]()
Post
#9
|
|
![]() Grupa: Zarejestrowani Postów: 138 Pomógł: 0 Dołączył: 1.08.2006 Skąd: Kielce Ostrzeżenie: (0%) ![]() ![]() |
Tak... ;-)
test.php Kod <script type="text/javascript" src="jquery-1.2.6.js"></script>
<script> $(document).ready(function(){ $.post("test.php", { name: "John"} ); }); </script> <? echo $_POST['name']; ?> |
|
|
![]()
Post
#10
|
|
![]() Grupa: Moderatorzy Postów: 8 989 Pomógł: 1550 Dołączył: 8.08.2008 Skąd: Słupsk/Gdańsk ![]() |
strona.php
Kod <script type="text/javascript" src="jquery-1.2.6.js"></script> <script> $(document).ready(function(){ $.post("test.php", { name: "John"} ); }); </script> test.php Kod print_r($_POST); Plik test.php jest wywoływany przez ajaxa i ty tego nie widzisz bezposrednio na stronie. W pliku test.php umieszczasz sobie obsluge dodawania czego tam chcesz. -------------------- |
|
|
![]()
Post
#11
|
|
![]() Grupa: Zarejestrowani Postów: 138 Pomógł: 0 Dołączył: 1.08.2006 Skąd: Kielce Ostrzeżenie: (0%) ![]() ![]() |
Nadal mam z tym problem
![]() Usilnie próbuje przekazac tą zmienną do tego test.php, a później zapisac do sessji $_SESSION['panel']; i nic Gdy się nie da rozwiązac problemu po prostu musze zwykle wyjaśnic do czego jest mi ten skrypt i zwykle problem rozwiązuje sie sam, a więc: Robie CMSa i usiłuje zrobic, aby panele Reklam, Linków, Ulubionych, Ostatnio dodanych mogły się schowac gdy uzytkownik tego chce. Chce aby każdy ruch panem, czy to schowanie go czy to otworzenie zostal dopisany do sessji w taki sposób: $_SESSION['panel_1']=1 or $_SESSION['panel_1']=0. Przy otwieraniu strony panele są sprawdzane pod względem zawartości $_SESSION['panel_1,2,3,4'] i albo otwarte albo zamknięte w zależności od 0,1. Gdy tworzy się nowa sesja (Anonymous) automatycznie dodaje wszystkie te panele jako otwarte. Teraz należałoby gdy użytkownik zmieni z otwartego na zamknięty dopisac to do sesji i tu wlasnie jest ten moj problem. NIe moge wyslac tej GLUPIEJ zmiennej do php ![]() W java script: nie da się wysyłac do php zmiennej; nie da sie zarzadzac sesjami czego wiecej sie nie da? ![]() Napisalem caly problem (moze powinienem zrobic to na samym początku) i czekam na jakieś propozycje. Jeśli macie inne pomysly chetnie wyslucham. NIe wiem jakby było to z ciasteczkami. Troche sie ich obawiam, sa nieco ryzykowne. |
|
|
![]()
Post
#12
|
|
Grupa: Zarejestrowani Postów: 207 Pomógł: 25 Dołączył: 16.11.2006 Ostrzeżenie: (0%) ![]() ![]() |
Nie znam się na jQuery, więc napiszę jak potrafię
JavaScript
Przypisać te dwie zmienne do sesji po stronie PHP już chyba dasz radę? Gdybyś miał problem z przypisaniem ich po stronie JS to pisz. Co do ich pobierania i użycia przy wejściu jakiejś osoby, to już najlepiej zrobić getem pewnie: JavaScript
test.php
Ważne aby nie było żadnych spacji między tagami XML, bo Firefox uzna je za (słusznie) jedno z childNodes i klapa. Można to oczywiście zrobić na różne sposoby w pętlach itp. ale to już sam kombinuj ;-) ps. ZNACZNIE łatwiej i wydajniej będzie to zrobić w ciasteczkach, do których JavaScript ma bezpośredni dostęp. Wiążą się z tym jednak dwa problemy: 1. Jeśli koleś jakoś zgubi ciastko, to zgubi też ustawienia. Można więc zapisywać je również do sesji i próbować odtworzyc gdyby je zgubił. 2. Ktoś może ukraść te tajne/poufne informacje o tych skrycie ukrywanych ustawieniach interfejsu ![]() Ten post edytował paziek 16.08.2008, 12:36:24 |
|
|
![]()
Post
#13
|
|
![]() Grupa: Zarejestrowani Postów: 603 Pomógł: 131 Dołączył: 24.07.2007 Skąd: Górny Śląsk Ostrzeżenie: (0%) ![]() ![]() |
@kobemat:
Zapodaj oba pliki na których testujesz (całe lub ewentualnie jesli sa długie to mądrze przycięte) @paziek: Po co się tak zagłębiać? Jak chcesz dodac 2 liczby to nie trzeba pisać w asemblerze. jQuery działa, błąd musi więc być gdzieś indziej. -------------------- |
|
|
![]() ![]() |
![]() |
Aktualny czas: 20.08.2025 - 23:50 |