Avatar billede revolution Nybegynder
22. december 2004 - 03:11 Der er 15 kommentarer og
1 løsning

password til hjemmeside?

Jeg vil gerne have et password til enten en af mine sider, eller til hele hjemmesiden.
Kan begge dele lade sig gøre?

Kan man sagtens komme ind alligevel hvis man ved hvordan man gør?
Eller kræver det bare en lille indsats?

Og sidst men ikke mindst, hvor finder jeg koden til en sådan?
Avatar billede baitianlong Nybegynder
22. december 2004 - 03:14 #1
Du kan forholdsvist enkelt lave det i PHP eller ASP, hvis dit webhotel understøtter det... Hvilket sprog vil du have det i ? Det er kun få linier :)
Avatar billede -kick- Nybegynder
22. december 2004 - 03:26 #2
i php og html kan du jo..


login.html:

<form action="test.php" method="post">
<input type="password" name="kode"><br />
<input type="submit" value="Login">
</form>

test.php:

<?php
$kodeordet = "ditkodeord";
if ($kodeordet == "$_REQUEST[kode]"){

print "Du har adgang.";
}
else
{

print "forkert kode.";
}
?>
Avatar billede revolution Nybegynder
22. december 2004 - 03:34 #3
Jeg vil gerne have det i html. Men det betyder ikke det helt store, bare det er til at prppe ind på ind html side jeg har lavet i notepad.

Hvor sikkert er det?

-kick- --> Den øverste halvdel er det en html del?
Og skal login.html: også med? Eller er det bare for at vise at det øverste er html og det nederste php?

Og skal jeg bare komme det ind i min body et sted?
Selvfølgelg efter jeg  har skiftet koden.
Og er det her jeg sætter min kode ind:

<input type="password" name="3984753985739857"><br />
Avatar billede baitianlong Nybegynder
22. december 2004 - 03:46 #4
Php-version:

<?php
$funktion = $_GET['funktion'];
if($funktion == "login") {
  $password = $_POST['pass'];
  if($password == "detrigtigekodeord") { //Der skal du skrive det rigtige kodeord
      header("Location: side.html"); //Der skal du skrive den side folk skal komme til, hvis kodeordet er rigtigt
  } else {
      $fejl = "Adgangskoden er forkert!";
  }
}
?>
<html>
<body>
<form action="<?= $_SERVER['PHP_SELF'] ?>?funktion=login" method="post">
Skriv adgangskode: <input type="password" size="10" name="pass"><br>
<input type="submit" value="Log ind"><br>
<?php
if(isset($fejl)) {
  print("<p style=\"color:#EE0000; \">".$fejl."</p>");
}
</form>
</body>
</html>

------------------------

ASP-version:

<%
Dim funktion, password, fejl
funktion = Request.QueryString("funktion")
if funktion = "login" then
  password = Request.Form("password")
  if password = "detrigtigekodeord" then 'Der skal du skrive det rigtige kodeord
      Response.Redirect("side.html") 'Der skal du skrive den side folk skal komme til, hvis kodeordet er rigtigt
  else
      fejl = "Adgangskoden er forkert"
  end if
end if
%>
<html>
<body>
<form action="<%= Request.ServerVariables("SCRIPT_NAME") %>?funktion=login" method="post">
Skriv adgangskode: <input type="password" size="10" name="pass"><br>
<input type="submit" value="Log ind"><br>
<?php
if fejl <> "" then
  response.write("<p style=""color:#EE0000; "">" & fejl & "</p>")
end if
</form>
</body>
</html>

Så kan du selv vælge :)
Avatar billede baitianlong Nybegynder
22. december 2004 - 04:01 #5
...Skulle lige vente på at Eksperten blev vedligeholdt :)

Der var et par tastefejl :) ...Du får en enkel version af en login-side i begge sprog her. Så må du vælge om du vil bruge den i PHP eller den i ASP. De er fuldstændig ens at kigge på, og fuldstændig ens i funktionalitet. -Kun sprogene er forskellige:

PHP-version:


<?php
$funktion = $_GET['funktion'];
if($funktion == "login") {
  $password = $_POST['pass'];
  if($password == "detrigtigekodeord") { //Der skal du skrive det rigtige kodeord
      header("Location: side.html"); //Der skal du skrive den side folk skal komme til, hvis kodeordet er rigtigt
  } else {
      $fejl = "Adgangskoden er forkert!";
  }
}
?>
<html>
<body>
<form action="<?= $_SERVER['PHP_SELF'] ?>?funktion=login" method="post">
Skriv adgangskode: <input type="password" size="10" name="pass"><br>
<input type="submit" value="Log ind"><br>
<?php
if(isset($fejl)) {
  print("<p style=\"color:#EE0000; \">".$fejl."</p>");
}
?>
</form>
</body>
</html>




ASP-version:


<%
Dim funktion, password, fejl
funktion = Request.QueryString("funktion")
if funktion = "login" then
  password = Request.Form("pass")
  if password = "detrigtigekodeord" then 'Der skal du skrive det rigtige kodeord
      Response.Redirect("side.html") 'Der skal du skrive den side folk skal komme til, hvis kodeordet er rigtigt
  else
      fejl = "Adgangskoden er forkert"
  end if
end if
%>
<html>
<body>
<form action="<%= Request.ServerVariables("SCRIPT_NAME") %>?funktion=login" method="post">
Skriv adgangskode: <input type="password" size="10" name="pass"><br>
<input type="submit" value="Log ind"><br>
<%
if fejl <> "" then
  response.write("<p style=""color:#EE0000; "">" & fejl & "</p>")
end if
%>
</form>
</body>
</html>


..så er der frit valg :)
Avatar billede -kick- Nybegynder
22. december 2004 - 04:05 #6
javascript versionen :D

login.html:

<form action="test.php" method="post">
<input type="password" name="kode"><br />
<input type="submit" value="Login">
</form>

test.php:
<script>
var kode = "dinkode"
var hentkode = "<?php echo "$_GET[kode]"; ?>"
if (hentkode == kode){
document.write("Du er logget ind");
} else {
document.write("Forkert password");
}
</script>
Avatar billede baitianlong Nybegynder
22. december 2004 - 04:09 #7
-kick- ... din første version vil aldrig skrive "du har adgang":

$kodeordet = "ditkodeord"; //her sætter du en variabel til "ditkodeord"
if ($kodeordet == "$_REQUEST[kode]"){ //her tester du om den er "$_REQUEST[kode]"

-det er den formodentlig ikke, da den netop er blevet sat til noget andet.

du mener naturligvis: if($_REQUEST['kode'] == $kodeordet) {

...Din anden version er heller ikke så god, desværre, da enhver kan se det rigtige kodeord i sidens kilde ;)
Avatar billede -kick- Nybegynder
22. december 2004 - 04:11 #8
så kunne man:
if (hentkode == "ditkodeord"){
Avatar billede baitianlong Nybegynder
22. december 2004 - 04:14 #9
Det ændrer jo ikke noget! Det skal afvikles på serveren, hvis kodeordet skal være usynligt...
Avatar billede revolution Nybegynder
22. december 2004 - 04:20 #10
jeg kan ikke få det til at virke.
Hvor præcis i mit html dokument skal jeg komme det ind?
Og skal det være i html´en på den side der skal være kode til?

Jeg har prøvet alle 3 slags..
Avatar billede baitianlong Nybegynder
22. december 2004 - 04:24 #11
Det er en adgangsside / loginside. Hvis du bruger min php version, skal filen hedde etellerandet.php, og alternativt etellerandet.asp. Det går ikke at den hedder etellerandet.html

Og der skal ikke være andet på den side, end det jeg har skrevet. Du skal bare rette detrigtigekodeord og den side man skal havne på, hvis kodeordet er rigtigt :)
Avatar billede baitianlong Nybegynder
22. december 2004 - 04:27 #12
Det skal dog siges at selv om kodeordet er skjult, kan enhver, der kender adressen på den "hemmelige" side stadog komme derhen ved blot at skrive adressen. Det kan du forebygge med sessions eller cookies. Så bliver det en lille smule mere avanceret, men dog ikke for vildt! ...anyway - godnat :)
Avatar billede Slettet bruger
22. december 2004 - 09:17 #13
Hvis du kører med Apache web server, kan du også bruge htaccess
f.eks.: http://www.digitalempire.dk/os/htaccess.shtml
Avatar billede revolution Nybegynder
22. december 2004 - 11:39 #14
Nu har kopieret php versionen ind i notepad og ændret tilføjet et kodeord, gemt siden som kodesiden.php, og oploadet den sammen med de andre mapper til min hjemmeside.

Men jeg kan stadigvæk bare åbne min hjemmeside og gå ind på den side der skulle være kodet.

min kode ser sådan ud:

<?php
$funktion = $_GET['funktion'];
if($funktion == "login") {
  $password = $_POST['pass'];
  if($password == "1234") { //Der skal du skrive det rigtige kodeord
      header("Location: http//www.blablabla.dk/side2.html"); //Der skal du skrive den side folk skal komme til, hvis kodeordet er rigtigt
  } else {
      $fejl = "Adgangskoden er forkert!";
  }
}
?>
<html>
<body>
<form action="<?= $_SERVER['PHP_SELF'] ?>?funktion=login" method="post">
Skriv adgangskode: <input type="password" size="10" name="pass"><br>
<input type="submit" value="Log ind"><br>
<?php
if(isset($fejl)) {
  print("<p style=\"color:#EE0000; \">".$fejl."</p>");
}
?>
</form>
</body>
</html>

Hvad skal jeg gøre for at den forbinder siden med min hjemmeside?
Avatar billede revolution Nybegynder
22. december 2004 - 14:24 #15
Jeg fandt ud af det. Tak for hjælpen..
Avatar billede baitianlong Nybegynder
22. december 2004 - 14:56 #16
Selv tak.. Du må jo lige skrive, hvis der er flere problemer :)
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

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