Scholieren.com forum

Scholieren.com forum (https://forum.scholieren.com/index.php)
-   Software & Hardware (https://forum.scholieren.com/forumdisplay.php?f=20)
-   -   [JavaScript]Forms autoinvullen (https://forum.scholieren.com/showthread.php?t=167085)

eddie 24-07-2002 13:00

Nu heeft Opera een paar kuren met betrekking tot cookies, dus ik dacht 'Misschien kan ik wel automatisch inloggen op s.com dmv javascript :)'

Ik heb een bookmark met het volgende:
Code:

javascript:window.location='http://forum.scholieren.com';
document.forms[0].username.value='eddie';
document.forms[0].password.value='**********';
document.forms[0].submit();

Maar het probleem is, dat de pagina niet is geladen wanneer hij het form wil invullen. Hoe kan ik dit goed krijgen?

Chimera 24-07-2002 13:03

Citaat:

eddie schreef:
Nu heeft Opera een paar kuren met betrekking tot cookies,
BWAHAHAHAHAHAHAHA :D

eddie 24-07-2002 13:04

Citaat:

Chimera schreef:


BWAHAHAHAHAHAHAHA :D

:rolleyes::rolleyes::rolleyes:

(:D :p)

Chimera 24-07-2002 13:04

Citaat:

eddie schreef:

Maar het probleem is, dat de pagina niet is geladen wanneer hij het form wil invullen. Hoe kan ik dit goed krijgen?

Sorry ;)

Probeer eens met window.open() een nieuw window te openen. je krijgt dan een window referentie terug, en via die reference kun je forms invullen.

eddie 24-07-2002 13:06

Citaat:

Chimera schreef:

Probeer eens met window.open() een nieuw window te openen. je krijgt dan een window referentie terug, en via die reference kun je forms invullen.

De hotlist opent vanzelf al een nieuw window. Dan heb ik er 2.

Maar ik zal ff proberen :)

eddie 24-07-2002 13:12

Citaat:

eddie schreef:

De hotlist opent vanzelf al een nieuw window. Dan heb ik er 2.

Maar ik zal ff proberen :)

Nee :(

Chimera 24-07-2002 13:15

Citaat:

eddie schreef:


Nee :(

Weet zeker dat het kan, je moet alleen het juiste form-element vinden.

eddie 24-07-2002 13:23

Citaat:

Chimera schreef:


Weet zeker dat het kan, je moet alleen het juiste form-element vinden.

Citaat:

Error:
name: TypeError
message: Value on left hand side of [...] is not convertible to Object: wnd.document.forms
Code:

javascript:wnd = window.open('http://forum.scholieren.com', 'test');
wnd.document.forms[0].username.value='eddie';
wnd.document.forms[0].password.value=***********';
wnd.document.forms[0].submit();

Het object forms bestaat niet (de pagina is dus niet geladen)

[edit]
Code:

javascript:wnd = window.open('http://forum.scholieren.com', 'test');
alert(wnd.document.forms);

geeft 'undefined' terug

[/edit]

P=Hp² 25-07-2002 15:31

Misschien helpt het, als je tussendoor een TimeOut zet. Het is niet bepaalt een proffessionele opllosing, maar misschien werkt het:

Code:

wnd = window.open('http://forum.scholieren.com', 'test');

function login(){
  wnd.document.forms[0].username.value='eddie';
  wnd.document.forms[0].password.value=***********';
  wnd.document.forms[0].submit();
}

window.setTimeout("login()", 2000);

Dan wordt er pas na 2 seconden geprobeert, het formulier in te vullen...

-=Odysseus=- 25-07-2002 15:34

Citaat:

P=Hp² schreef:
Misschien helpt het, als je tussendoor een TimeOut zet. Het is niet bepaalt een proffessionele opllosing, maar misschien werkt het:

Code:

wnd = window.open('http://forum.scholieren.com', 'test');

function login(){
  wnd.document.forms[0].username.value='eddie';
  wnd.document.forms[0].password.value=***********';
  wnd.document.forms[0].submit();
}

window.setTimeout("login()", 2000);

Dan wordt er pas na 2 seconden geprobeert, het formulier in te vullen...

is er nix te doen met een Onload() command ofzo...? Kzou het zo snel niet weten, denk eerlijk gezegd van niet maar tis maar een ideetje

P=Hp² 25-07-2002 15:45

Citaat:

-=Odysseus=- schreef:


is er nix te doen met een Onload() command ofzo...? Kzou het zo snel niet weten, denk eerlijk gezegd van niet maar tis maar een ideetje

Nee, dat werkt niet, want dan zou dat hiet op s.com moeten worden veranderd, en dat gaat waarschijnlijk niet. Maar op een andere manier gaat het misschien wel, dat pas geprobeert wordt iets in te vullen, als het venster geladen is:

Code:

wnd = window.open('http://forum.scholieren.com', 'test');

function login(){
  if(wnd.status == window.status){
    wnd.document.forms[0].username.value='eddie';
    wnd.document.forms[0].password.value=***********';
    wnd.document.forms[0].submit();
  }
  else window.setTimeout("login()", 200);
}

in de BODY-tag moet dan nog:
Code:

onLoad="login();"
Hiermee wordt om de 200 ms gecontroleerd, of de status van het geopende venster gelijk is aan de status van het venster zelf ("Gereed"). Als dat het geval is, wordt het formulier ingevuld, anders wordt er weer 200 ms gewacht.

eddie 25-07-2002 16:34

Citaat:

P=Hp² schreef:

Hiermee wordt om de 200 ms gecontroleerd, of de status van het geopende venster gelijk is aan de status van het venster zelf ("Gereed"). Als dat het geval is, wordt het formulier ingevuld, anders wordt er weer 200 ms gewacht.

Maar dat werk volgens mij niet in een bookmark ;)

P=Hp² 25-07-2002 16:40

Mmmmh.... da klopt :D

Maar als je het nou eens zo probeert: je maakt lokaal een nieuwe pagina (bv C:\redirect.html) met volgende inhoud:
Code:

<html>
<head>
<script language="JavaScript">
<!--
function login(){
  if(wnd.status == window.status){
    wnd.document.forms[0].username.value='eddie';
    wnd.document.forms[0].password.value=***********';
    wnd.document.forms[0].submit();

    window.close();
  }
  else window.setTimeout("login()", 200);
}
//-->
</script>
</head>
<body onLoad="login()">
<script language="JavaScript">
<!--
wnd = window.open('http://forum.scholieren.com', 'test');
//-->
</script>
</body>
</html>

Vervolgens maak je een bookmark naar C:\redirect.html. Dan zou het moeten lukken...

eddie 25-07-2002 17:32

Citaat:

P=Hp² schreef:
Dan zou het moeten lukken...
Nope. :)

Het moet toch kunnen?

P=Hp² 25-07-2002 17:52

Komt er een foutmelding in het éérste venster (redirect.html dus) ?

eddie 25-07-2002 19:34

Nee. :)

Maar hij doet het gewoon niet :) (je kan het zelf natuurlijk ook proberen ;))

P=Hp² 25-07-2002 19:46

Ik heb geen Opera ^^'

eddie 25-07-2002 19:55

Citaat:

P=Hp² schreef:
Ik heb geen Opera ^^'
www.opera.com/download ;)

Maar zelfs dit doet het niet :/
Code:

wnd = window.open('http://forum.scholieren.com', 'test');
setTimeout("wnd.document.forms[0].username.value='eddie'", 2000 );
setTimeout("wnd.document.forms[0].password.value=''", 2000 );

Error:
Code:

Error:
name: TypeError
message: Value on left hand side of [...] is not convertible to Object: wnd.document.forms


MilieuGaatVoor 25-07-2002 23:23

En een code als deze:

Code:


javascript:window.location='http://forum.scholieren.com';
for ( var i = 0; i < 1 ) {
if(document.forms) {
i = 1;
document.forms[0].username.value='eddie';
document.forms[0].password.value='**********';
document.forms[0].submit();
}}

Uitleg (voor als het niet precies werkt maar het idee goed is zodat je het zelf kan verbeteren):

Hij loopt steeds de vraag of het document een form object heeft. Zo ja, dan wordt i = 1, dan vult-ie de form in en submit-ie, en de for-loop stopt want i is immers 1 geworden. Snap?

MilieuGaatVoor 25-07-2002 23:37

Die van mij werkt half. Als de forum index is geladen, dan werkt het script. Als dit niet het geval is, laadt hij de forum index. Maar omdat er in de locatiebalk dan geen script meer staat maar een locatie werkt hij het script niet meer verder af. Dus ik kan niks anders bedenken dan dat je dat klote Opera in de prullenbak moet kieperen en gewoon MSIE neemt.
O ja, het script dat ik net gaf is nét niet goed, het script dat half werkt is deze:

javascript: window.location = 'http://forum.scholieren.com'; for ( var i = 0; i < 1; i = i ) { if (document.forms) { i = 1; document.forms[0].username.value='eddie'; document.forms[0].password.value='**********'; document.forms[0].submit(); } }

MilieuGaatVoor 25-07-2002 23:41

Wat je wel kan doen, is de form overnemen in een eigen nieuwe pagina (natuurlijk het pad van de action niet relatief maar voluit invoeren) en een body onload met de code erin knallen. Dan processt-ie de php met je naam en passwd en gooit-ie je naar het forum. Dus, kort, iets van:

Code:

<body onload="jecode">
<form action="http://for...en.com/member.php>

...

</form>
</body>


eddie 26-07-2002 09:15

Citaat:

Socratesss schreef:
Wat je wel kan doen, is de form overnemen in een eigen nieuwe pagina (natuurlijk het pad van de action niet relatief maar voluit invoeren) en een body onload met de code erin knallen. Dan processt-ie de php met je naam en passwd en gooit-ie je naar het forum. Dus, kort, iets van:

Code:

<body onload="jecode">
<form action="http://for...en.com/member.php>

...

</form>
</body>


En dat werkt nu juist niet. :P
Dat was het allereerste wat ik probeerde. Gewoon de volgende url in de snelkoppeling zetten:
Code:

http://forum.scholieren.com/member.php?username=eddie&amp;password=*****
Alleen het probleem is dat hij dan niet inlogt. In het formulier zit nog een hidden input met de naam s, die een veranderende code heeft. En die kan ik niet weten :)

Een code als dit:
<input type="hidden" name="s" value="bc4b4250d478fb65ae9230b9f78bb9b3">

MilieuGaatVoor 26-07-2002 18:23

WERKT WEL!!!!!

Code:


<html>
<head>
<script>
function logFI() {
document.forms[0].username.value='naampjuh';
document.forms[0].password.value='********';
document.forms[0].submit();
}
</script>
</head>
<body onLoad="logFI()">
<table border="0" cellpadding="0" cellspacing="0">
<form action="http://forum.scholieren.com/member.php" method="post">
<tr>
        <td nowrap><font class="sf"><b><a name="login">Niet ingelogd?</a></b><br>Login met

gebruikersnaam en wachtwoord:</font></td>
</tr><tr>
        <td nowrap><input type="hidden" name="s" value="d80894baa8ed58b42d0ea40a9f19439b">
        <input type="hidden" name="action" value="login">
        <input type="text" class="bginput" name="username" size="7">
        <input type="password" class="bginput" name="password" size="7">
        <input type="submit" class="bginput" value="Log in!"></td>
</tr>
</form>
</table>
</body>
</html>


(tenminste, in MSIE.. check jij dan ff in Opera)

eddie 26-07-2002 18:45

jah, ok :)

Hij doet het nu ook gewoon. Zal wel aan de volgorde hebben gelegen ofzo :confused:

Dit staat nu in mijn snelkoppeling:
Code:

http://forum.scholieren.com/member.php?action=login&username=eddie&password=******
De s-waarde is geldig (heb ik gewoon uit de source geplukt), en de action spreekt voor zich :)

[edit]
De s-waarde wordt er zo te zien uitgefilterd. Deze staat nog voor de action.

member.php?s=....&action=login...
[/edit]

MilieuGaatVoor 26-07-2002 20:19

Citaat:

eddie schreef:
jah, ok :)

Hij doet het nu ook gewoon. Zal wel aan de volgorde hebben gelegen ofzo :confused:

Dit staat nu in mijn snelkoppeling:
De s-waarde is geldig (heb ik gewoon uit de source geplukt), en de action spreekt voor zich :)

[edit]
De s-waarde wordt er zo te zien uitgefilterd. Deze staat nog voor de action.

member.php?s=....&action=login...
[/edit]

Ik wilde ook al zo'n URL geven met member.php en variables erin zoals jij nu geeft, maar ik wist niet precies hoe (ken geen php), ik dacht eerst
Code:

http://forum.scholieren.com/member.php?username=eddie?password=******
maar dat klopt natuurlijk niet..


Alle tijden zijn GMT +1. Het is nu 07:15.

Powered by vBulletin® Version 3.8.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.