/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
Hjemmesideskolens login til PHP...
Fra : Dennis Munding


Dato : 22-09-05 21:07

Hej NG!

Jeg har hentet (og modificeret) Erik Ginnerskovs login-filer til flere
brugere - PHP og MySQL.

Det fungerer fint med at logge ind og se de beskyttede sider, og oprette
brugere....

MEN! Erik påstår på sin side, at man ikke kan bruge browserens tilbage-knap
til at komme ind på de beskyttede sider....
Det kan man heller ikke på de sider, som han har lavet, men jeg kan ikke få
"skidtet" til at virke!!

Filerne, som frit kan hentes, ligger på denne side:
http://www.hjemmesideskolen.dk/scripts/phpmysql/default.php
(login-oplysningerne står under formularen!)

Jeg har dog ikke brugt dem alle - synes forklaringen i oversigten (den
kommer man til, når man er logget ind!), og filer ikke stemte helt overens -
hvilket jeg synes er vigtigt, når man er nybegynder udi PHP....

Jeg har:

Login-fil: Formular til indtastning af brugernavn og password!

Login-tjek-fil: Tjekker om brugernavn og password er korrekte og sender
derefter - i bekræftende fald - brugeren videre til min "forside"!

Logout-fil: Skulle gerne sørge for, at brugeren er logget HELT ud, men det
virker tilsyneladende ikke...?

Opret-bruger-fil: Formular til oprettelse af brugernavn og password!

Opret-bruger-ok-fil: Tjekker at brugernavnet ikke er optaget!

De sidste 2 filer virker fint - ingen problemer der!

Jeg synes, at jeg har fulgt det slavisk, men alligevel er jeg ikke sikker,
da jeg mistede "orienteringen" undervejs.....

Nogen som kan give et muligt hint til, hvad der kan være gået galt??

På forhånd mange tak for hjælpen!


Med venlig hilsen
--
Dennis Munding
Web-master
http://www.skovaa-munding.dk/, http://www-mundings-memorial.dk/
http://www.cantica.dk/, http://www.eds-denmark.dk/



 
 
Erik Ginnerskov (24-09-2005)
Kommentar
Fra : Erik Ginnerskov


Dato : 24-09-05 00:56

Dennis Munding wrote:
> Hej NG!
>
> Jeg har hentet (og modificeret) Erik Ginnerskovs login-filer til flere
> brugere - PHP og MySQL.
>
> Det fungerer fint med at logge ind og se de beskyttede sider, og
> oprette brugere....
>
> MEN! Erik påstår på sin side, at man ikke kan bruge browserens
> tilbage-knap til at komme ind på de beskyttede sider....
> Det kan man heller ikke på de sider, som han har lavet, men jeg kan
> ikke få "skidtet" til at virke!!
>
> Filerne, som frit kan hentes, ligger på denne side:
> http://www.hjemmesideskolen.dk/scripts/phpmysql/default.php
> (login-oplysningerne står under formularen!)

Har du prøvet at hente det færdige filsæt?

http://www.hjemmesideskolen.dk/files/mysql.zip

--
Med venlig hilsen
Erik Ginnerskov
http://hjemmesideskolen.dk - http://ginnerskov.dk
http://html-faq.dk/



Dennis Munding (24-09-2005)
Kommentar
Fra : Dennis Munding


Dato : 24-09-05 13:02

Hej Erik!
"Erik Ginnerskov" <erik@donotspammmeplease.invalid> skrev i en meddelelse
news:43349604$0$49015$14726298@news.sunsite.dk...
> Har du prøvet at hente det færdige filsæt?
>
> http://www.hjemmesideskolen.dk/files/mysql.zip

Ja, men det fungerer stadig ikke...??

Hvis jeg klikker på "Tilbage", efter at have logget ud, kommer man ind på de
beskyttede sider, men hvis jeg så klikker på "Opdater", får jeg at vide, at
man skal være logget ind for at kunne se siden....

Hvad har jeg overset??


Med venlig hilsen
--
Dennis Munding
Web-master
http://www.skovaa-munding.dk/, http://www-mundings-memorial.dk/
http://www.cantica.dk/, http://www.eds-denmark.dk/



Erik Ginnerskov (24-09-2005)
Kommentar
Fra : Erik Ginnerskov


Dato : 24-09-05 23:25

Dennis Munding wrote:

> Ja, men det fungerer stadig ikke...??
>
> Hvis jeg klikker på "Tilbage", efter at have logget ud, kommer man
> ind på de beskyttede sider, men hvis jeg så klikker på "Opdater", får
> jeg at vide, at man skal være logget ind for at kunne se siden....

Det har jeg ingen anelse om. Jeg har tjekket indholdet af zip-filen - koden
er identisk med koden bag mine sider online (og den viste kode på samme
sider).

--
Med venlig hilsen
Erik Ginnerskov
http://hjemmesideskolen.dk - http://ginnerskov.dk
http://html-faq.dk/



Dennis Munding (25-09-2005)
Kommentar
Fra : Dennis Munding


Dato : 25-09-05 11:13

Hej Erik!
"Erik Ginnerskov" <erik@donotspammmeplease.invalid> skrev i en meddelelse
news:4335d258$0$49010$14726298@news.sunsite.dk...
> Det har jeg ingen anelse om. Jeg har tjekket indholdet af zip-filen -
> koden
> er identisk med koden bag mine sider online (og den viste kode på samme
> sider).

Jeg har skrevet et svar til Henrik Stidsen, hvor koden til min "forside"
er - måske du kan finde et fejl i opstillingen i den??


Med venlig hilsen
--
Dennis Munding
Web-master
http://www.skovaa-munding.dk/, http://www-mundings-memorial.dk/
http://www.cantica.dk/, http://www.eds-denmark.dk/



Erik Ginnerskov (27-09-2005)
Kommentar
Fra : Erik Ginnerskov


Dato : 27-09-05 00:21

Dennis Munding wrote:

> Jeg har skrevet et svar til Henrik Stidsen, hvor koden til min
> "forside" er - måske du kan finde et fejl i opstillingen i den??

Prøv at indsætte disse tre linjer kode i header.inc:

<meta http-equiv="Cache-Control" content="no-cache" />
<meta http-equiv="Cache-Control" content="no-store" />
<meta http-equiv="Pragma" content="no-cache" />

--
Med venlig hilsen
Erik Ginnerskov
http://hjemmesideskolen.dk - http://ginnerskov.dk
http://html-faq.dk/



Dennis Munding (27-09-2005)
Kommentar
Fra : Dennis Munding


Dato : 27-09-05 11:25

Hej Erik!

"Erik Ginnerskov" <erik@donotspammmeplease.invalid> skrev i en meddelelse
news:43388270$0$49015$14726298@news.sunsite.dk...
> Prøv at indsætte disse tre linjer kode i header.inc:
>
> <meta http-equiv="Cache-Control" content="no-cache" />
> <meta http-equiv="Cache-Control" content="no-store" />
> <meta http-equiv="Pragma" content="no-cache" />

Det virkede ikke helt, men jeg har brugt det for en sikkerheds skyld - se
mit svar til Jesper H. nederst i tråden...


Med venlig hilsen
--
Dennis Munding
Web-master
http://www.skovaa-munding.dk/, http://www-mundings-memorial.dk/
http://www.cantica.dk/, http://www.eds-denmark.dk/



Henrik Stidsen (24-09-2005)
Kommentar
Fra : Henrik Stidsen


Dato : 24-09-05 23:34

Dennis Munding formulated on lørdag :
> Hvis jeg klikker på "Tilbage", efter at have logget ud, kommer man ind på de
> beskyttede sider, men hvis jeg så klikker på "Opdater", får jeg at vide, at
> man skal være logget ind for at kunne se siden....

Det lyder som om din browser cacher siden.

--
Henrik Stidsen - http://henrikstidsen.dk/



Dennis Munding (25-09-2005)
Kommentar
Fra : Dennis Munding


Dato : 25-09-05 11:12

Hej Henrik!
"Henrik Stidsen" <nntpspam@hs235.dk> skrev i en meddelelse
news:mn.c8217d590ff799bd.34878@news.hs235.dk...
> Dennis Munding formulated on lørdag :
>> Hvis jeg klikker på "Tilbage", efter at have logget ud, kommer man ind på
>> de beskyttede sider, men hvis jeg så klikker på "Opdater", får jeg at
>> vide, at man skal være logget ind for at kunne se siden....
>
> Det lyder som om din browser cacher siden.

Ja, men så burde den vel også cache Eriks side??
Men det gør den tilsyneladende ikke, for jeg har prøvet at klikke "Tilbage",
når jeg har logget af på hans sider, og der får jeg den korrekte melding med
det samme om, at jeg skal være logget ind!??

Kan det have noget at gøre med de includerede filer, som jeg kalder fra de
beskyttede sider?

Eks. min "forside" ser således ud:

<? $strTitle="Fotoalbums";?>
<? include("header.inc"); ?>
<body>


<div id="indhold">
<?php
session_start();
if(isset($_SESSION['logget_ind'])){
?>
<h2>Fotoalbums</h2><br />

<div class="billede">
<a href="Bryllup.php"><img src="../Billeder/Bryllup/Sig_JA1.jpg"
alt="Sig_JA11.jpg" title="Bryllups-albummet" /></a>
<p class="titel">Bryllups-billeder</p>
</div>

<div class="billede">
<a href="B-Boys.php"><img src="../Billeder/B-Boys/Billede05-1.jpg"
alt="Billede05-1.jpg" title="B-Boys-albummet" /></a>
<p class="titel">Mødet med B-Boys</p>
</div>

<div class="billede">
<a href="Junior.php"><img src="../Billeder/Junior(Uge01)/012-1.jpg"
alt="012-1.jpg" title="Junior-albummet" /></a>
<p class="titel">Junior</p>
</div>

<div style="clear:both;">
<p style="text-indent:0%;padding-bottom:1%;"><a href="(sti til
logout-fil)">Log ud</a></p>
</div>

<div id="footer">
<?php
include("../footer.inc");
?>
</div>

<?php
}
else
{
echo "<h1>Du skal være logget ind for at se disse sider!</h1>
<p><a href=\"(stil til login-fil)">Login</a></p>";
}
?>
</div>
</body>
</html>

Hvis I kan lokalisere en fejl i ovenstående, kan jeg måske få det til at
virke, for de andre sider er bygget op på samme måde...

På forhånd tak for hjælpen!


Med venlig hilsen
--
Dennis Munding
Web-master
http://www.skovaa-munding.dk/, http://www-mundings-memorial.dk/
http://www.cantica.dk/, http://www.eds-denmark.dk/



Henrik Stidsen (25-09-2005)
Kommentar
Fra : Henrik Stidsen


Dato : 25-09-05 13:51

Dennis Munding brought next idea :
>> Det lyder som om din browser cacher siden.

> Ja, men så burde den vel også cache Eriks side??

Det kan der være noget om ...

> Hvis I kan lokalisere en fejl i ovenstående, kan jeg måske få det til at
> virke, for de andre sider er bygget op på samme måde...

Hvordan ser din logout funktion ud ?

--
Henrik Stidsen - http://henrikstidsen.dk/



Dennis Munding (25-09-2005)
Kommentar
Fra : Dennis Munding


Dato : 25-09-05 16:24

Hej Henrik!
"Henrik Stidsen" <nntpspam@hs235.dk> skrev i en meddelelse
news:mn.cb7b7d59943f3e7e.34878@news.hs235.dk...
> Hvordan ser din logout funktion ud ?

Sådan:

<? $strTitle="Password - logout";?>
<? include("header.inc"); ?>
<body>
<div id="topbar">
<?php
include("../top.inc");
?>
</div>

<div id="menu">
<h3>Indhold:</h3>
<?php
include("../menu.inc");
?>
<script type="text/javascript"><!--
// Does Namespace 'ml' exist
if (typeof(ml) != "undefined") {
// Build ListMenu by the id of the root ul element
var oMenu2 = new ml.buildList("menu2");
}
//--></script>
</div>

<div id="indhold">
<h1><? echo $strTitle; ?></h1>
<?php
session_start();
session_destroy();
echo "<h1>Du er nu logget af!</h1>";
echo "<p>Log ind igen? Klik <a href=\"(sti til login-fil)">her!</a></p>";
?>
</div>
</body>
</html>


Med venlig hilsen
--
Dennis Munding
Web-master
http://www.skovaa-munding.dk/, http://www-mundings-memorial.dk/
http://www.cantica.dk/, http://www.eds-denmark.dk/



Michael Rasmussen (25-09-2005)
Kommentar
Fra : Michael Rasmussen


Dato : 25-09-05 16:32

On Sun, 25 Sep 2005 17:24:19 +0200, Dennis Munding wrote:

Kun et vildt gæt. Prøv følge session kombination:

session_start();
session_unset();
session_destroy();

--
Hilsen/Regards
Michael Rasmussen
http://keyserver.veridis.com:11371/pks/lookup?op=get&search=0xE3E80917


Dennis Munding (26-09-2005)
Kommentar
Fra : Dennis Munding


Dato : 26-09-05 04:06

Hej Michael!
"Michael Rasmussen" <mir@miras.org> skrev i en meddelelse
news:pan.2005.09.25.15.31.46.628002@miras.org...
> On Sun, 25 Sep 2005 17:24:19 +0200, Dennis Munding wrote:
>
> Kun et vildt gæt. Prøv følge session kombination:
>
> session_start();
> session_unset();
> session_destroy();

Det var forsøget værd, men desværre kan man stadig bakke ind igen....

Men tak for hjælpen alligevel!


Med venlig hilsen
--
Dennis Munding
Web-master
http://www.skovaa-munding.dk/, http://www-mundings-memorial.dk/
http://www.cantica.dk/, http://www.eds-denmark.dk/



Jesper H (27-09-2005)
Kommentar
Fra : Jesper H


Dato : 27-09-05 07:07

Hey

Jeg plejer at bruge følgende php-kode til at forsøge at undgå at
siden bliver cachet:

// Date in the past
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");

// always modified
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");

// HTTP/1.1
header("Cache-Control: no-store, no-cache, must-revalidate");
header("Cache-Control: post-check=0, pre-check=0", false);

// HTTP/1.0
header("Pragma: no-cache");

- det plejer at virke, men brugerne kan vist stadig tvinge deres
browsere til at cache siderne, hmm... Du kan læse lidt om det på
http://dk.php.net/manual/en/function.header.php

Det er der, jeg oprindeligt har hentet koden, men de har vist for
nyligt ændret det til
header("Cache-Control: no-cache, must-revalidate"); // HTTP/1.1
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT"); // Date in the past

Der står på den side også noget om en session_cache_limiter()
funktion:
http://dk.php.net/manual/en/function.session-cache-limiter.php
Der er nogle folk, som har kæmpet med noget lignende det, du skriver.
snakes at ntica dot com foreslår:
header("ETag: PUB" . time());
header("Last-Modified: " . gmdate("D, d M Y H:i:s", time()-10) . "
GMT");
header("Expires: " . gmdate("D, d M Y H:i:s", time() + 5) . " GMT");
header("Pragma: no-cache");
header("Cache-Control: max-age=1, s-maxage=1, no-cache,
must-revalidate");
session_cache_limiter("nocache");

Andre foreslår noget i retning af session_cache_limiter('private,
must-revalidate'); eller lignende.

Husk at sætte din session_cache_limiter FØR NOGET SOM HELST OUTPUT og
specielt FØR DIN SESSION_START(). Jeg mener også session_start()
skal køres før der er sendt noget som helst output til browseren, men
er ikke sikker...

--
Mvh
Jesper
http://fdf.dk/landsdel1/


Dennis Munding (27-09-2005)
Kommentar
Fra : Dennis Munding


Dato : 27-09-05 11:31

Hej Jesper!

"Jesper H" <jesper.haukrogh@gmail.com> skrev i en meddelelse
news:1127801194.776443.143650@g49g2000cwa.googlegroups.com...

[SNIP]

Jeg mener også session_start()
skal køres før der er sendt noget som helst output til browseren, men
er ikke sikker...

Jamen det er da fuldstændig korrekt!! (Det virker i hvert fald...)

Jeg havde sat session_start() i min <div id="indhold"> HER </div>, og det
var tilsyneladende det, der var galt, for ny virker det helt efter Eriks
hensigter!!

Inden jeg prøvede dit forslag, forsøgte jeg mig med det, Erik havde
foreslået længere oppe i tråden (nogle ekstra meta-tags), men det virkede
ikke...
Jeg har dog beholdt dem i min header, for man kan aldrig være for sikker!!

Mange tak til alle, som har forsøgt at hjælpe mig, og til dig Jesper for at
komme med "guldkornet"!

Jeg er stadig nybegynder i PHP, så jeg havde ingen anelse om, at placeringen
af session_start() var forkert....


Med venlig hilsen
--
Dennis Munding
Web-master
http://www.skovaa-munding.dk/, http://www-mundings-memorial.dk/
http://www.cantica.dk/, http://www.eds-denmark.dk/



Erik Ginnerskov (27-09-2005)
Kommentar
Fra : Erik Ginnerskov


Dato : 27-09-05 16:57

Dennis Munding wrote:

>> Jeg mener også session_start()
>> skal køres før der er sendt noget som helst output til browseren, men
>> er ikke sikker...
>
> Jamen det er da fuldstændig korrekt!! (Det virker i hvert fald...)
>
> Jeg havde sat session_start() i min <div id="indhold"> HER </div>, og
> det var tilsyneladende det, der var galt,

Den må du lige lade mig lure lidt på. Det jeg viser på mine sider skulle da
gerne være så godt som muligt - i alles interesse.

--
Med venlig hilsen
Erik Ginnerskov
http://hjemmesideskolen.dk - http://ginnerskov.dk
http://html-faq.dk/



Dennis Munding (27-09-2005)
Kommentar
Fra : Dennis Munding


Dato : 27-09-05 19:35

Hej Erik!

"Erik Ginnerskov" <erik@donotspammmeplease.invalid> skrev i en meddelelse
news:43396bc8$0$49016$14726298@news.sunsite.dk...

>> Jeg havde sat session_start() i min <div id="indhold"> HER </div>, og
>> det var tilsyneladende det, der var galt,
>
> Den må du lige lade mig lure lidt på. Det jeg viser på mine sider skulle
> da
> gerne være så godt som muligt - i alles interesse.

Det får du så lov til...

Det undrede mig også, at jeg ikke kunne få det til at virke, for jeg går ud
fra, at du har lavet dine egne sider nogenlunde, som du har beskrevet i
"manualen" til filerne.... (Altså ud fra samme skabelon)?

Hvorfor jeg så ikke kunne få det til at virke, ved jeg ikke....

Skal lige indskyde, at før jeg testede begge versioner, tømte jeg både
"Temporary internetfiles" og "Cookies" - før hvert forsøg....


Med venlig hilsen
--
Dennis Munding
Web-master
http://www.skovaa-munding.dk/, http://www-mundings-memorial.dk/
http://www.cantica.dk/, http://www.eds-denmark.dk/



Erik Ginnerskov (28-09-2005)
Kommentar
Fra : Erik Ginnerskov


Dato : 28-09-05 23:12

Dennis Munding wrote:

>> Den må du lige lade mig lure lidt på. Det jeg viser på mine sider
>> skulle da
>> gerne være så godt som muligt - i alles interesse.
>
> Det får du så lov til...

Ja, hvor?

--
Med venlig hilsen
Erik Ginnerskov
http://hjemmesideskolen.dk - http://ginnerskov.dk
http://html-faq.dk/



Dennis Munding (29-09-2005)
Kommentar
Fra : Dennis Munding


Dato : 29-09-05 09:15

Hej Erik!

"Erik Ginnerskov" <erik@donotspammmeplease.invalid> skrev i en meddelelse
news:433b1549$0$49012$14726298@news.sunsite.dk...
>> Det får du så lov til...
>
> Ja, hvor?

Vil du have kildekoden eller et link til siderne, som det drejer sig om??


Med venlig hilsen
--
Dennis Munding
Web-master
http://www.skovaa-munding.dk/, http://www-mundings-memorial.dk/
http://www.cantica.dk/, http://www.eds-denmark.dk/



Erik Ginnerskov (29-09-2005)
Kommentar
Fra : Erik Ginnerskov


Dato : 29-09-05 21:36

Dennis Munding wrote:

> Vil du have kildekoden eller et link til siderne, som det drejer sig
> om??

Jeg går ikke ud fra, at jeg kan se php-koden ved at hente en side hjem i
browseren. ;)

Derfor ville det da være at foretrække, om jeg kunne se hele kildekoden
minus dine logindata til database. Dem kan du xxx ud.

--
Med venlig hilsen
Erik Ginnerskov
http://hjemmesideskolen.dk - http://ginnerskov.dk
http://html-faq.dk/



Dennis Munding (29-09-2005)
Kommentar
Fra : Dennis Munding


Dato : 29-09-05 21:57

Hej Erik!
"Erik Ginnerskov" <erik@donotspammmeplease.invalid> skrev i en meddelelse
news:433c5018$0$49014$14726298@news.sunsite.dk...
> Jeg går ikke ud fra, at jeg kan se php-koden ved at hente en side hjem i
> browseren. ;)

Nej, men så kunne jeg jo poste den... Ik'?

> Derfor ville det da være at foretrække, om jeg kunne se hele kildekoden
> minus dine logindata til database. Dem kan du xxx ud.

Dit ønske er hermed opfyldt:

http://www.pastebin.dk/index.php?show=1116

Håber, at det er tilstrækkeligt, ellers må du lige skrive igen....
Har ikke noget imod at hjælpe!

Skal dog lige huske at tilføje, at Opera fejler m.h.t. at bakke ind igen -
men det ved du jo godt....?


Med venlig hilsen
--
Dennis Munding
Web-master
http://www.skovaa-munding.dk/, http://www-mundings-memorial.dk/
http://www.cantica.dk/, http://www.eds-denmark.dk/



Erik Ginnerskov (29-09-2005)
Kommentar
Fra : Erik Ginnerskov


Dato : 29-09-05 22:08

Dennis Munding wrote:

> http://www.pastebin.dk/index.php?show=1116

Takker, nærlæser det og forsøger at lære noget. ;)

--
Med venlig hilsen
Erik Ginnerskov
http://hjemmesideskolen.dk - http://ginnerskov.dk
http://html-faq.dk/



Dennis Munding (30-09-2005)
Kommentar
Fra : Dennis Munding


Dato : 30-09-05 07:22

Hej Erik!
"Erik Ginnerskov" <erik@donotspammmeplease.invalid> skrev i en meddelelse
news:433c57c5$0$49015$14726298@news.sunsite.dk...

> Takker, nærlæser det og forsøger at lære noget. ;)

Altid en god ting, at lære noget nyt...

Men nu må du ikke spørge mig om PHP-relaterede emner, for jeg vil højst
sandsynligvis ikke kunne give dig et svar.

Men god fornøjelse med det!


Med venlig hilsen
--
Dennis Munding
Web-master
http://www.skovaa-munding.dk/, http://www-mundings-memorial.dk/
http://www.cantica.dk/, http://www.eds-denmark.dk/



Jesper H (27-09-2005)
Kommentar
Fra : Jesper H


Dato : 27-09-05 11:53

Det er da også underligt at PHP ikke selv har brokket sig over det,
altså at session_start() ikke sad før der blev sendt andet til
browseren.

Men er da glad for, at du ser ud til at have løst dit problem. Jeg er
også stadig ny i sessions (rettere sagt, har endnu ikke brugt det men
skal til det meget snart).


--
Mvh
Jesper
http://fdf.dk/landsdel1/


Henrik Stidsen (28-09-2005)
Kommentar
Fra : Henrik Stidsen


Dato : 28-09-05 21:51

After serious thinking Jesper H wrote :
> Det er da også underligt at PHP ikke selv har brokket sig over det,
> altså at session_start() ikke sad før der blev sendt andet til
> browseren.

Det kan være fordi der bruges output buffering, hvis der gør det kan
man sende headers fra allersidste linie i et script uden at få fejl
(alt output lægges i en buffer og sendes først til klienten når det
hele er klar)

--
Henrik Stidsen - http://henrikstidsen.dk/



Søg
Reklame
Statistik
Spørgsmål : 177552
Tips : 31968
Nyheder : 719565
Indlæg : 6408849
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste