Avatar billede jstar Nybegynder
05. maj 2004 - 11:35 Der er 28 kommentarer og
1 løsning

forskellig forsider

Jeg er ved at lave et site hvor brugeren på indgangsiden vælger i mellem to links. Lads os kalde dem link A og link B.

Vælger man link A kommer man til en speciel forside lad os kalde den indexA. Og trykker man på link B kommer man til indexB.

Problemet er at udover de to forsider (indexA og indexB) er selve indholdet på resten af siderne ens. Men hvis nu du man vil tilbage til forsiden (f.eks. indexA) og f.eks. trykker på knappen "gå tilbage til forsiden" Hvordan kommer man til den rigtige forside altså altså indexA? Er der nogen som har et bud på hvordan jeg løser dette problem?
Avatar billede majsmarken Nybegynder
05. maj 2004 - 13:28 #1
det letteste ville vel være at lave 2stk "tilbage til forsiden"

Jeg mener, hvis du alligevel har 2 index links, kan du vel også have to tilbage "til index" links...
Avatar billede jstar Nybegynder
05. maj 2004 - 14:04 #2
Det er det der er hele problemet. Det er ikke meningen når man første valgt A eller B at man kan komme til den forkerte forside. Så det kan jeg desværre ikke bruge.
Avatar billede roenving Novice
05. maj 2004 - 17:59 #3
Er det en fast indstilling, som brugeren kan lave, er det vel en tur i kagebageriet, du skal !-)

Sæt en cookie ved tryk på link A eller link B, og hav så en kode på den side, som aflæser en evt. cookie, og redirecter til den rigtige side, hvis cookien er sat !o]
Avatar billede jstar Nybegynder
05. maj 2004 - 18:21 #4
Tak - Roenving! kan man blive "blacklistet" af søgemaskinerne hvis den ligger en cookie på forsiden?
Avatar billede jstar Nybegynder
05. maj 2004 - 18:22 #5
jeg har hørt man bliver blacklistet hvis man redirecter
Avatar billede roenving Novice
05. maj 2004 - 18:32 #6
En søgemaskine kan ikke trykke på et link, så det den gør er at finde de links, som er på siden og så prøve at åbne dem !-)

Den får naturligvis fejl på rene javascript-links, men du kan jo lave linket sådan:

<a href="linkA.html" onclick="skrivCookie('forside','linkA')">Brug link A som forside</a>

-- og din redirecting skal du jo lave vha. javascript, som robotterne ikke kan fortolke og aflæse, så det vil de ikke opdage:

i et javascript fra start:

if(hentCookie('forside'))location.href = hentCookie('forside') + ".html";
Avatar billede jstar Nybegynder
05. maj 2004 - 19:47 #7
Hej igen Roenving...dit forslag lyder fornuftigt! Nu er jeg ikke den store cookie ekspert...har du et bud på hvordan man gør? Altså så en cookie amatør også kan forstå:-)
Avatar billede jstar Nybegynder
05. maj 2004 - 19:48 #8
jeg vil gerne smide 60 point oven i hvis du kommer med et bud jeg kan bruge;-)
Avatar billede roenving Novice
05. maj 2004 - 19:53 #9
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
    "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Cookies</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<meta name="Generator" content="Stone's WebWriter 4">
<script language="javascript" type="text/javascript">
function skrivCookie(name,value,expTime,path){//Tid i dage
  switch(skrivCookie.arguments.length){
    case 1:
      var expTime = 0;
      var path = "/";
    case 2:
      var expTime = 0;
      var path = "/";
    case 3:
      var path = "/";
  }
  var exp = new Date().getTime()+expTime*24*60*60*1000;
  exp = new Date(exp).toGMTString();
  var cook = name + " = " + escape(value) + ";expires=" + exp + ";path=" + path;
  document.cookie = cook;
}
function hentCookie(name){
  if (document.cookie){
    var n = document.cookie.indexOf(name+"=");
    if (n>-1){
      var val = document.cookie.substring(n+name.length+1);
      n = val.indexOf(";");
      if(n>-1)val=val.substring(0,n);
      return unescape(val);
    }
  }else return null;
}
if(hentCookie('forside'))location.href = hentCookie('forside') + ".html";
</script>

</head>

<body>
<a href="linkA.html" onclick="skrivCookie('forside','linkA',365)">Brug link A som forside</a><br>
<a href="linkB.html" onclick="skrivCookie('forside','linkB',365)">Brug link B som forside</a>
</body>

</html>

-- og tallet 365 betyder så, at cookien holder i et år, den kan du frit lave om !-)
Avatar billede jstar Nybegynder
05. maj 2004 - 20:10 #10
tusind tak..er ikke helt med på hvad jeg skal skifte ud om ´med hvad.
Avatar billede jstar Nybegynder
05. maj 2004 - 20:12 #11
altså hvor de forskellige url skal være. Skal jeg lave nogle ændringer på selve sitet?
Avatar billede jstar Nybegynder
05. maj 2004 - 20:12 #12
for at det virker.
Avatar billede roenving Novice
05. maj 2004 - 20:20 #13
Nu har jeg jo ikke den fjerneste anelse om, hvordan dit site ser ud, så derfor har jeg bare smidt en skitse ...

Hele javascript-blokken smider du uændret ind i starten af head-sektionen (eller linker den ind !-)

-- og de to links, jeg har skrevet, skal du selvfølgelig tilrette, så de i virkeligheden afspejler, hvad dine alternative forsider hedder, f.eks.

<a href="forsideLilla.html" onclick="skrivCookie('forside','forsideLilla',365)">Brug den lilla som forside</a>

-- bemærk, at jeg har brugt en simpel udgave, så det kræver, at du har _nøjagtig_ det samme som den anden parameter i skrivCookie-kaldet, som findes som link !-)
Avatar billede jstar Nybegynder
05. maj 2004 - 20:45 #14
Lad os kalde mit site http://www.lillalink.dk
hvis nu siden med de to links hedder: index.htm

Og de to forsider hedder indexA.htm og indexB.htm

Hvilken url skal min øvrige links til forsiden have for at den automatisk finder ud af om det er indexA.htm og indexB.htm som skal vises?
Avatar billede jstar Nybegynder
05. maj 2004 - 20:52 #15
hvis jeg f.eks. linker til http://www.lillalink.dk/index.htm få jeg en fejl altså siden findes ikke.
Avatar billede roenving Novice
05. maj 2004 - 21:05 #16
<a href="indexA.html" onclick="skrivCookie('forside','indexA',365)">Brug indexA som forside</a><br>
<a href="indexB.html" onclick="skrivCookie('forside','indexB',365)">Brug indexB som forside</a>
Avatar billede jstar Nybegynder
05. maj 2004 - 21:23 #17
*SS* jeg tænker mere på hvis jeg er på en tilfældig side på mit website og vil tilbage forsiden altså indexA eller indexB alt efter hvad jeg har valgt på den aller første side.
Avatar billede roenving Novice
05. maj 2004 - 21:29 #18
Så skal _alle_ dine forside-links henvise til index.htm:

<a href="/index.htm" target="_top">Gå til forside</a>

-- fordi cookien så vil være sat, vil man blive øjeblikkelig viderestillet !-)
Avatar billede jstar Nybegynder
05. maj 2004 - 21:34 #19
oki...det var nemlig det jeg prøvede men så fik jeg bare meldingen at siden ikke findes. Troede jeg linkede forkert.
Avatar billede roenving Novice
05. maj 2004 - 21:38 #20
Har du bemærket det, jeg har skrevet om at der skal være overenstemmelse !-)

I den ovenstående er f.eks.

href="indexA.htm" og

skrivCookie('forside','indexA',365)

Det der indexA skal være nøjagtigt ens, og hvis du bruger htm-endelsen skal javascript-linjen selvfølgelig også gøre det:

if(hentCookie('forside'))location.href = hentCookie('forside') + ".htm";
Avatar billede jstar Nybegynder
05. maj 2004 - 21:57 #21
nu tror jeg at jeg har den*;-)
Avatar billede roenving Novice
05. maj 2004 - 21:59 #22
Jamen, så velbekomme '-)
Avatar billede jstar Nybegynder
05. maj 2004 - 22:35 #23
Endelig er den i kassen:-) Tusinde tak Roenving;-)
Avatar billede jstar Nybegynder
05. maj 2004 - 22:36 #24
hvordan giver jeg dine ekstra points?
Avatar billede jstar Nybegynder
05. maj 2004 - 22:43 #25
Kan man egentlig lave cookie systemet med radioknapper lige som på http://www.jcrew.com

skal nok smide 30 ekstra points oven i*SS*
Avatar billede roenving Novice
05. maj 2004 - 22:50 #26
Når du har accepteret et svar i et spørgsmål, er det 'lukket', forstået på den måde, at så kan der ikke deles flere point ud !-)

-- derimod kan man sagtens forøge pointtallet i et åbent spørgsmål, dog højest til 200 point !o]

Se f.eks. http://expfaq.1go.dk ...

-- og det spiller ingen trille, om du gør det med links eller med radioknapper:

IndexA: <input type="radio" name="forside" onclick="skrivCookie('forside','indexA',365);location.href='indexA.htm'">
IndexB: <input type="radio" name="forside" onclick="skrivCookie('forside','indexB',365);location.href='indexB.htm'">

-- her har jeg bare sat den til at reloade, for der er vel ingen ide i at trykke på dem, hvis man ikke ændrer ...
Avatar billede jstar Nybegynder
06. maj 2004 - 16:01 #27
Jeg takker endnu en gange;-)
Avatar billede jstar Nybegynder
06. maj 2004 - 16:04 #28
Avatar billede roenving Novice
07. maj 2004 - 00:36 #29
Takker for point ;~}
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
Computerworld tilbyder specialiserede kurser i database-management

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