Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [JS]Autowypełnianie formularza w ramce
Forum PHP.pl > Forum > Po stronie przeglądarki > JavaScript
lukas_nowicki
Czy można przy pomocy JS wypełnić formularz który znajduje się w ramce?

Przykład:

Do iframe'a ładuję stronę "http://serwer.com/statystyki.php" - jest tam kilka pól. Chciałbym aby skrypt wypełnił część z nich a część z nich pozostawił puste. - jest to wykonalne?


ps. nie mam możliwości modyfikowania kodu wczytywanej strony
decha-design
Wypełnić raczej by się dało, ale nic dalej z tym nie zrobisz ... nie prześlesz tego dalej automatycznie, chyba że chcesz oczywiście klikać =)

pzdr
lukas_nowicki
Cytat(decha-design @ 25.12.2008, 01:32:01 ) *
Wypełnić raczej by się dało, ale nic dalej z tym nie zrobisz ... nie prześlesz tego dalej automatycznie, chyba że chcesz oczywiście klikać =)

pzdr


Nie chcę go przesyłać automatycznie ponieważ część pól i tak musiałby uzupełnić użytkowniki (pól jest dużo a większość danych jakie należy tam wpisać posiadam w bazie - użytkownik jedynie musiałby podać login, haslo i e-mail, a potem wysłać formularz klikając w button)

Jeżeli ktoś wie jak to zrobić prosiłbym o mały przykład

pozdrawiam

Wesołych Świat
yaro
Jak dobrze pamiętam to trzeba sięgnąć po: window.frames[]

troche jest opisane tutaj:
http://www.howtocreate.co.uk/tutorials/jav...owserinspecific
i tutaj
http://js.webhelp.pl/kursy/js/pliki/javascript_3.php?roz=
lukas_nowicki
Niestety JS nie jest moją mocną stroną...

Mam takie coś:


  1. <script type="text/javascript">
  2. function fill() {
  3. window.frames['ID_RAMKI'].getElementsByName('width').value='150';
  4. }
  5. </head>
  6. <body onload="fill();">


Jednak pole tekstowe o nazwie NAME="width" nie uzupełnia się...
yaro
Hmm, musiałem zrobić sobie przykład, bo jakoś inaczej mi to nieszło winksmiley.jpg Takie coś popełniłem:

index.html
  1. </head>
  2. <frameset border="0" frameSpacing="0" rows="100%">
  3. <frame name="ramka1" src="1.html" height="100px">
  4. <frame src="3.html" height="100px">
  5. </html>


1.html
  1. </head>
  2. <form name="logform">
  3. <input name="login" value="ad" />
  4. </form>
  5. </body>
  6. </html>


3.html
  1.  
  2. alert(window.parent.frames[0].document.forms["logform"].login.value);
  3. window.parent.frames[0].document.forms["logform"].login.value = "re";
  4.  


Myśle że sie przyda

Już chyba wiem w czym jest problem z modyfikowaniem strony z innej domeny. Po prostu zabezpieczenia przeglądarki.
flashdev
Cytat(yaro @ 25.12.2008, 22:17:14 ) *
Już chyba wiem w czym jest problem z modyfikowaniem strony z innej domeny. Po prostu zabezpieczenia przeglądarki.


Otóż to.


Niestety nie mozna modyfikować formularza strony (z innej domeny) wczytanej w ramce, a moze raczej stety.

Nietrudno sobie wyobrazić co by się działo gdyby nie było tego zabezpieczenia.

Prosty przykład:

Wielu z uzytkowników na tym forum pewnie ma włączoną opcję autologowania.

Wystarczy ze podam na forum link do odpowiednio przygotowanej strony, która wczyta na komputerze uzytkownika forum php.pl, następnie przejdzie do panelu, zmieni adres email i już przechwyciliśmy czyjeś konto.

Takie coś nie przejdzie, więc mozliwosć dostępu do strony (cokkies, skrypty, wszystko) z innej domeny jest zablokowana i raczej nigdy to sie nie zmieni.
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.