Avatar billede pfp Nybegynder
02. november 2002 - 21:03 Der er 11 kommentarer og
1 løsning

Luk vinduet af sig selv, hvis login betingelser opfyldt

Hej,

Jeg ved ikke lige helt om dette er den rette kategori, da det højst sandsynligt er en blanding af javascript og asp.

Jeg har et pop-up vindue hvori jeg tjekker brugernavn og adgangskode med ASP. Hvis kravene for at få adgang opfyldes sendes man videre til en ny side uden for pop-up vinduet (altså target=_blank).

Er der ikke mulighed for at det lille pop-up vindue bliver lukket af sig selv, hvis man får adgang til at komme videre? Hvis kravene for login ikke bliver opfyldt vil jeg stadig have fejlmeddelsen i pop-up vinduet.

Jeg søger ikke nødvendigvis færdig kode, men blot jeres tanker og ideer, da jeg ikke lige selv kan se hvordan jeg skal gribe det an.

/peter
Avatar billede Slettet bruger
02. november 2002 - 23:19 #1
<body onload=\"window.close();\">
(sættes ind i HTML-siden i popupvinduet når betingelserne er opfyldt!
Det skulle vidst være løsningen på dit problem!
Avatar billede pfp Nybegynder
03. november 2002 - 13:22 #2
Hej regin,

Jeg håber du vil specificere lidt hvordan jeg skal få det til at fungere. Prøv at se på:
http://www.votus.dk/test/

Når man har klikket "Log ind" og www.dr.dk åbnes skal Login-boksen lukke af sig selv.

Det kan godt være det er det du har skrevet, men jeg vil gerne have det skåret ud i pap. Hvis der skal flere point til finder vi ud af det.
Avatar billede edutasia Nybegynder
04. november 2002 - 15:29 #3
Et aller andet sted i din ASP-kode genererer du koden, der åbner det nye vindue. Dér kan du også indsætte koden, der lukker vinduet. Eksempel:

<% If boolApproved Then ' logon er OK - indsæt JavaScript %>
  <script>
    //åbn nyt vindue
    window.open('http://dr.dk','','indsæt parametre for vinduets udseende her');
    // luk dette vindue
    window.close();
  </script>
<% End If %>
Avatar billede pfp Nybegynder
04. november 2002 - 16:52 #4
Hej edutasia,

Tak for dit indlæg.

Jeg har prøvet at sætte din kode ind:
<%
If Request.QueryString("mode") = "tjek" then
Brugernavn = Request.Form("Brugernavn")
Adgangskode = Request.Form("Adgangskode")
If Brugernavn = "peter" AND Adgangskode = "123456" then
%>
<script>
    //åbn nyt vindue
    window.open('http://dr.dk');
    // luk dette vindue
    window.close();
  </script>
<%
else
Response.Write "Du har ikke adgang til systemet."
End if
End if
%>

Man bliver godt nok sendt videre til siden men den pop-up boks hvori man logger ind bliver ikke lukket.
Avatar billede Slettet bruger
04. november 2002 - 17:13 #5
<script>
    //åbn nyt vindue
    window.open('http://dr.dk');
    // luk dette vindue
    window.close();
  </script>
ændres til;
Response.Write("<HTML><HEAD></HEAD><BODY onload=\"window.open('http://dr.dk');self.close();\">")
Avatar billede pfp Nybegynder
04. november 2002 - 17:25 #6
Regin -> Det virker heller ikke. Så åbner den bare login boksen i et nyt stort vindue.
Avatar billede grunken Nybegynder
06. november 2002 - 23:49 #7
jeg tror det er såre simpelt fordi at manden faktisk åbner det nye vindue, derfra kører han så loginchecket....:

så deeet burde bare skulle ændres sådan her

<%
If Request.QueryString("mode") = "tjek" then
Brugernavn = Request.Form("Brugernavn")
Adgangskode = Request.Form("Adgangskode")
If Brugernavn = "peter" AND Adgangskode = "123456" then
%>
<script>
    //åbn nyt vindue
    window.location.replace('http://dr.dk');
    window.MyWindow.close();
  </script>
<%
else
Response.Write "Du har ikke adgang til systemet."
End if
End if
%>

-grunken
Avatar billede pfp Nybegynder
07. november 2002 - 18:08 #8
grunken -> Er dit ikke det samme som det edutasia foreslog? Altså det som jeg har prøvet i 04/11-2002 16:52:51? Jeg kan ihvertfald heller ikke få dit til at virke.
Avatar billede grunken Nybegynder
09. november 2002 - 02:58 #9
pfp >> næsten det samme , men du har jo rent faktisk åbnet et nyt vindue inden at du kører checket, og det er fjollet :)

skift denne linie I dit loginvindue ud :

<form action="Login.asp?mode=tjek" method="post" name="Login" target="_blank" id="Login">

med :

<form action="Login.asp?mode=tjek" method="post" name="Login" id="Login">

derefter indsætter du dette her der hvor den checker password :

<%
If Request.QueryString("mode") = "tjek" then
Brugernavn = Request.Form("Brugernavn")
Adgangskode = Request.Form("Adgangskode")
If Brugernavn = "peter" AND Adgangskode = "123456" then
%>
<script>
    //åbn nyt vindue
    window.open('http://dr.dk');
    // luk dette vindue
    self.close();
  </script>
<%
else
Response.Write "Du har ikke adgang til systemet."
End if
End if
%>

det skal virke :)

-grunken

ps. og sikkert har min forslag sikkert lignet andres meget, men der var ændre på lidt :))
Avatar billede pfp Nybegynder
09. november 2002 - 09:09 #10
grunken -> Tusind tak! Nu virker det sgu perfekt!
Smid et svar så skal du få point.
Avatar billede grunken Nybegynder
09. november 2002 - 13:18 #11
svar :)
Avatar billede grunken Nybegynder
09. november 2002 - 13:26 #12
takker for points :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester