Avatar billede sodamnsweet Nybegynder
17. maj 2005 - 16:10 Der er 15 kommentarer

Redirect Med Password

Hejsa. Jeg har lavet en html side der redirecter videre til en side med password. Kan det lade sig gøre at redirecte og samtidig lave et script der også logger ind??
Avatar billede nielle Nybegynder
17. maj 2005 - 17:54 #1
Lav en side som:

1) Indeholder en form, med method="POST" og action="DenSideSomSkalValiderePassword.php”
2) I formen er der et antal hidden felter svarende til brugernavn og password og eventuelle andre felter.
3) Sidens onLoad sættes derefter til at submitte formen.
Avatar billede nielle Nybegynder
17. maj 2005 - 18:08 #2
<html>
<head>
<title>Eksperten</title>
</head>
<body onLoad="java script:document.autosubmit.submit();">

<form name="autosubmit" action="login.php" method="get">
<input type="hidden" name="user" value="nielle">
<input type="hidden" name="password" value="qwerty">
</form>

</body>
</html>
Avatar billede sodamnsweet Nybegynder
18. maj 2005 - 08:20 #3
Vil du ikke være sød at pensle det helt ud for mig..
Jeg forstår godt det sidste - men hvad skal der stå i de hidden felter?!? altså hvad skal deres 'action' være?
Avatar billede nielle Nybegynder
18. maj 2005 - 11:02 #4
Dit problem sådan som jeg forstår det:

Du ønsker at redirecte til en side som indeholder en login-form. Efterfølgende ønsker du at logge ind, og dette skal helst foregå automatisk uden at du selv behøver at indtaste et brugernavn og et password.

Er det korrekt? For jeg kan nemlig godt fortolke dit spørgsmål anderledes.

Løsningen under disse præmisser kunne så se nogenlunde sådan her ud:

I login-formen - lad os kalde den for login.php - er der altså mindst to inputfelter:

Siden login.php:

<form action="validatelogin.php" method="post">
<input type="text" name="user">
<input type="password" name="pwd">
<input type="submit">
</form>

Af action-attributtet fremgår det at selve valideringen foregår på siden validatelogin.php.

Nu har vi så din side – dinside.php. Fra den ønsker du at lave en redirect til login.php. Problemet er at du derved kommer ind på den side hvor du skal indtaste username og password. Du kender formentligt allerede disse fra anden sammenhæng, og derfor ønsker du ikke at indtaste skulle dem igen; Systemet skal bare logge dig ind.

Derfor ville det også være meget bedre hvis du i stedet kunne redirekte til validatelogin.php siden, men nu løber du så ind i problemet med at en almindelig redirect ikke medtager de to vigtige felter name og pwd.

En almindelig redirect løser altså ikke problemet; Hvordan får man værdierne fra input-felter med? Dette kan godt nok lade sig gøre hvis man bruger GET i stedet for POST – og det er generelt en meget dårlig ide når vi snakker om følsomme data som f.eks. password.

Løsningen er at redirecte til en side som har en form med de vigtige input-oplysninger og som så efterfølgende submitter sig selv. Det lyder en smule indviklet, men er det i virkeligheden ikke. Fra din dinside.php redirecter du altså ikke til hverken login.php eller validatelogin.php, men derimod til en anden side som du selv laver – dinsidevalidatelogin.php:

Siden dinsidevalidatelogin.php:

<html>
<head>
<title>Eksperten</title>
</head>
<body onLoad="java script:document.autosubmit.submit();">

<form name="autosubmit" action=" validatelogin.php" method="post">
<input type="hidden" name="user" value="nielle">
<input type="hidden" name="pwd" value="qwerty">
</form>

</body>
</html>

Straks efter at browseren loader dinsidevalidatelogin.php bliver onload-begivenheden affyret hvorefter at formen bliver submittet og input-data bliver sendt til validatelogin.php som så logger ind.

Jeg håber at det blev lidt klarere for dig?
Avatar billede sodamnsweet Nybegynder
18. maj 2005 - 11:20 #5
Så har jeg formuleret mit spørgsmål forkert..

Jeg har en side der skal der skal gå videre til en side hvor man fra starten logger ind på en server.. Altså en passqord beskyttet server. Mit spøgrsmål går på om man på redirect siden kan lave et script der logger ind samtidig med at man redirecter?.. meget indviklet...forståeligt?
Avatar billede nielle Nybegynder
18. maj 2005 - 12:33 #6
Ok, det var så en mulig fortolkning som jeg helt havde overset. ;^)

Prøv med denne her form:

www.dinserver.dk" target="_blank">http://username:password@www.dinserver.dk
Avatar billede sodamnsweet Nybegynder
18. maj 2005 - 13:41 #7
Okaj.. altså jeg har en side der hedder
<html>
<head>
<META HTTP-EQUIV="Refresh" CONTENT="0 ;URL=http://www.minurl.dk/"> 
</head>

<body bgcolor="#FFFFFF" text="#000000">

</body>
</html>

Den skal så redirecte hen til den password beskyttet side...hvilket jeg har fået den til.. nu skal jeg bare få den til at logge ind samtidig.... Hvor skal jeg smide www.dinserver.dk" target="_blank">http://username:password@www.dinserver.dk ind henne?
Avatar billede nielle Nybegynder
18. maj 2005 - 18:25 #8
Det skal vel se nogenlunde sådan her ud:

<html>
<head>
<META HTTP-EQUIV="Refresh" CONTENT="0 ;URL=http://username:password@www.minurl.dk "> 
</head>
<body bgcolor="#FFFFFF" text="#000000">
</body>
</html>

Jeg kan desværre ikke give nogen garanti for at det virker idet at der er et par forskellige måder man kan logge på en servere på – den viste er en mulighed som *muligvis* virker. Men kun muligvis...
Avatar billede sodamnsweet Nybegynder
18. maj 2005 - 18:37 #9
Det virker desværre ikke :(
Avatar billede nielle Nybegynder
18. maj 2005 - 21:01 #10
Har du adgang til at bruge f.eks. PHP, ASP, eller måske endda ASP.NET i din løsning?
Avatar billede sodamnsweet Nybegynder
18. maj 2005 - 21:14 #11
Kan godt prøve Php.. Hvis du kan forklare mig det... Kan godt forstå php bare ikke selv skrive det
Avatar billede nielle Nybegynder
18. maj 2005 - 21:51 #12
<?php
header("Location: www.minurl.dk">"" target="_blank">http://username:password@www.minurl.dk">");
?>
Avatar billede sodamnsweet Nybegynder
19. maj 2005 - 13:01 #13
det virker desværre ikke :(
Avatar billede nielle Nybegynder
19. maj 2005 - 17:30 #14
Så har jeg desværre ikke flere ideer. :^|
Avatar billede sodamnsweet Nybegynder
20. maj 2005 - 09:00 #15
Tusinde tak fordi du prøvede...
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
Kurser inden for grundlæggende programmering

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