Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Dostęp z JS do danych $_POST, odczyt i wstawianie do formularza
Forum PHP.pl > Forum > Po stronie przeglądarki > JavaScript
Jarod
Mam na stronie formularz, w którym wpisuję dzień, miesiąc i rok. Miesiąc i rok jest podany domyślnie. Jeśli wszystkie 3 pola są wypełnione ładowane są dane na konkretny dzień. Jeśli któreś pole (najczęściej dzień) jest puste - ładowane są dane z bieżącego dnia (aktualna data).

Problem:
Użytkownik ładuje dane (poprzez wysłanie formularza metodą post) na konkretny dzień. Klika na jakiś link, otwiera się okno popup i po pewnych czynnościach (mało istotne) zamyka się, a ja za pomocą JS wysyłam formularz jeszcze raz. Dzięki temu strona się przeładowuje i nie ma komunikatu o powtórnym wysyłaniu danych POSTDATA.

Problem w tym, że po zamknięciu popupa ładują się dane z bieżącego dnia.


Co chcę osiągnąć:
Dostać się za pomocą JS to danych POST (istnieją w oknie głównym, w popie $_POST jest puste), pobrać dzień, miesiąc, rok i wstawić je w inputy w formularzu.
Z wysłaniem formularza nie mam problemu. Pomoże ktoś?


EDIT:
Ewentualnie jeśli mam adres w formie http://serwer/main/pl/akcja/p1/w1/p2/w2/.....8-05-10/p3/w3...
to jak mogę pobrać cały adres za pomocą JS, wyciągnąć z niego datę 2008-05-10 i rozbić to na części - tak jak explode() w php?
lord_t
Location.href lub inne właściwości location do zdobycia adresu.

Split to js-owy explode.
Jarod
Dzięki za wskazówki. Osiągnąłem to co chciałem osiągnąć w następujący sposób (może się komuś przyda):
  1. var aPath = window.location.pathname.split("/");
  2. var aDate = aPath[7].split("-");
  3.  
  4. window.opener.document.getElementById("day").value = aDate[2];
  5. window.opener.document.getElementById("month").value = aDate[1];
  6. window.opener.document.getElementById("year").value = aDate[0];
  7. window.opener.document.forms[0].submit();
  8. window.close();


BTW: Jest możliwość dostania się za pomocą JS do danych z tablicy $_POST php?

pzdr.
phpion
Cytat(Jarod @ 22.05.2008, 02:08:41 ) *
BTW: Jest możliwość dostania się za pomocą JS do danych z tablicy $_POST php?

Musisz tą zablicę wpisać w źródło pliku JS czyli po prostu generujesz JS z poziomu PHP smile.gif Do zrzutu całej tablicy $_POST z pewnością przyda Ci się print_r" title="Zobacz w manualu PHP" target="_manual z drugim parametrem true. Odpowiednie "uformowanie" danych i masz tablicę $_POST w JS smile.gif
Jarod
Cytat(phpion @ 22.05.2008, 07:25:57 ) *
Musisz tą zablicę wpisać w źródło pliku JS czyli po prostu generujesz JS z poziomu PHP smile.gif

He he.. Pokażesz prosty przykład? smile.gif
lord_t
Prosty przykład:
  1. <?
  2. $r=array(100,101,304,502);
  3.  
  4. $js='var tab=new Array('.implode(',',$r).');';
  5. echo $js;
  6. ?>
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.