Avatar billede michaeljuul Nybegynder
10. oktober 2006 - 18:54 Der er 27 kommentarer

Login til bestemt side?

Hej

Jeg leder efter et login som sender en bruger til en bestemt side, som jeg vælger.

Er der nogle som kan hjælpe med et?
Avatar billede jannek_ek Nybegynder
10. oktober 2006 - 19:59 #1
header("Location: bestemtSide.php");

det er dog vigtigt at der ikke kommer noget output før header funktionen kaldes.
hvis der er mere kode neden under, bør du bruge:

die(header("Location: bestemtSide.php"));

da serveren ellers bare vil arbejde videre med koden på siden man forlader.
Avatar billede michaeljuul Nybegynder
10. oktober 2006 - 20:09 #2
Du skulle vel ikke ligge inde med et script?
Avatar billede jannek_ek Nybegynder
10. oktober 2006 - 20:20 #3
Jeg har et med database og sessions:
den kræver en form, der har felter med navnene login og pass.

<?php
session_start();
include("db.php"); // forbindelse til databasen

  $result = Query("select `name`, `id`, `status` from `users` where `name`='".addslashes($_POST["login"])."' and `pass`='".addslashes($_POST["pass"])."'"); // vælger brugeren fra db, med matchende brugernavn og pass
if (mysql_num_rows($result) == 1) // hvis der er fundet en bruger
{
  $row = mysql_fetch_array($result);
 
  // overfører brugeroplysninger til sessions
  $_SESSION["user"] = $row["name"];
  $_SESSION["id"] = $row["id"];
  $_SESSION["status"] = $row["status"];
 
  die(header("Location: loggedon.php")); // overføre brugeren til loggedon.php
} else // hvis brugeroplysninger ikke var korekte
{
  die(header("Location: wronglogin.php")); // overføre brugeren til wronglogin.php
}
?>
Avatar billede michaeljuul Nybegynder
10. oktober 2006 - 20:23 #4
Kunne du evt sende mig en mail med de filer jeg skal bruge? Så kan jeg rette dem til
Avatar billede jannek_ek Nybegynder
10. oktober 2006 - 21:06 #5
har lige sat noget sammen http://kaizer.zapto.org/skabeloner/db_login
Du skal huske at ændre filendelsen til .php
Avatar billede michaeljuul Nybegynder
10. oktober 2006 - 21:13 #6
Ok jeg kigger lige på det.
Avatar billede michaeljuul Nybegynder
10. oktober 2006 - 21:22 #7
Jeg kan ikke finde filen som laver Mysql tabel.
Og kan heller ikke se noget login og password i nogle af filerne.
Avatar billede jannek_ek Nybegynder
10. oktober 2006 - 21:29 #8
create table laver den tabel du skal bruge, med forudsætning af at der er lavet en database, og du har udfyldt db.php
med hensyn til oprettelse af bruger, regnede jeg med du kunne gøre det i din database, men kan lige lave et script der gør det for dig
Avatar billede michaeljuul Nybegynder
10. oktober 2006 - 21:37 #9
Takker
Avatar billede jannek_ek Nybegynder
10. oktober 2006 - 21:49 #10
så er den fil lavet - create.phps
Avatar billede michaeljuul Nybegynder
10. oktober 2006 - 22:00 #11
Tak. MEN der er en ting som forvirer mig meget og det er alle de ;&nbsp;&nbsp
Se herunder. Det er fra den sidste fil.

<code><span style="color: #000000">
<span style="color: #0000BB">&lt;?php
<br />&nbsp;</span><span style="color: #007700">if&nbsp;(</span><span style="color: #0000BB">$_POST</span><span style="color: #007700">[</span><span style="color: #DD0000">"admin"</span><span style="color: #007700">]&nbsp;==&nbsp;</span><span style="color: #DD0000">"adminkode"</span><span style="color: #007700">)&nbsp;</span><span style="color: #FF8000">//&nbsp;adminkode&nbsp;skal&nbsp;du&nbsp;ændre&nbsp;til&nbsp;den&nbsp;kode&nbsp;du&nbsp;vil&nbsp;bruge&nbsp;når&nbsp;du&nbsp;opretter&nbsp;en&nbsp;bruger
<br />&nbsp;</span><span style="color: #007700">{
<br />&nbsp;&nbsp;if&nbsp;(!empty(</span><span style="color: #0000BB">$_POST</span><span style="color: #007700">[</span><span style="color: #DD0000">"login"</span><span style="color: #007700">])&nbsp;&amp;&amp;&nbsp;</span><span style="color: #0000BB">$_POST</span><span style="color: #007700">[</span><span style="color: #DD0000">"pass"</span><span style="color: #007700">]&nbsp;==&nbsp;</span><span style="color: #0000BB">$_POST</span><span style="color: #007700">[</span><span style="color: #DD0000">"pas2"</span><span style="color: #007700">])&nbsp;</span><span style="color: #FF8000">//&nbsp;navn&nbsp;er&nbsp;udfyldt&nbsp;og&nbsp;de&nbsp;to&nbsp;passwords&nbsp;er&nbsp;ens
<br />&nbsp;&nbsp;</span><span style="color: #007700">{
<br />&nbsp;&nbsp;&nbsp;include(</span><span style="color: #DD0000">"db.php"</span><span style="color: #007700">);
<br />&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">$result&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">mysql_query</span><span style="color: #007700">(</span><span style="color: #DD0000">"select&nbsp;`name`&nbsp;from&nbsp;`users`&nbsp;where&nbsp;`name`='"</span><span style="color: #007700">.</span><span style="color: #0000BB">addslashes</span><span style="color: #007700">(</span><span style="color: #0000BB">$_POST</span><span style="color: #007700">[</span><span style="color: #DD0000">"login"</span><span style="color: #007700">]).</span><span style="color: #DD0000">"'"</span><span style="color: #007700">)&nbsp;or&nbsp;die(</span><span style="color: #0000BB">mysql_error</span><span style="color: #007700">());
<br />&nbsp;&nbsp;&nbsp;if&nbsp;(</span><span style="color: #0000BB">mysql_num_rows</span><span style="color: #007700">(</span><span style="color: #0000BB">$result</span><span style="color: #007700">)&nbsp;==&nbsp;</span><span style="color: #0000BB">0</span><span style="color: #007700">)&nbsp;</span><span style="color: #FF8000">//&nbsp;findes&nbsp;navnet&nbsp;allerede?
<br />&nbsp;&nbsp;&nbsp;</span><span style="color: #007700">{
<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">mysql_query</span><span style="color: #007700">(</span><span style="color: #DD0000">"insert&nbsp;into&nbsp;`users`&nbsp;(`name`,&nbsp;`pass`)&nbsp;values&nbsp;('"</span><span style="color: #007700">.</span><span style="color: #0000BB">addslashes</span><span style="color: #007700">(</span><span style="color: #0000BB">$_POST</span><span style="color: #007700">[</span><span style="color: #DD0000">"login"</span><span style="color: #007700">]).</span><span style="color: #DD0000">"',&nbsp;'"</span><span style="color: #007700">.</span><span style="color: #0000BB">addslashes</span><span style="color: #007700">(</span><span style="color: #0000BB">$_POST</span><span style="color: #007700">[</span><span style="color: #DD0000">"pass"</span><span style="color: #007700">]).</span><span style="color: #DD0000">"')"</span><span style="color: #007700">)&nbsp;or&nbsp;die(</span><span style="color: #0000BB">mysql_error</span><span style="color: #007700">());&nbsp;</span><span style="color: #FF8000">//&nbsp;opretter&nbsp;brugeren
<br />&nbsp;&nbsp;&nbsp;</span><span style="color: #007700">}&nbsp;else
<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">$fejl&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #DD0000">"Navnet&nbsp;er&nbsp;optaget!"</span><span style="color: #007700">;
<br />&nbsp;&nbsp;}&nbsp;else
<br />&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">$fejl&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #DD0000">"Felterne&nbsp;skal&nbsp;udfyldes&nbsp;korrekt!"</span><span style="color: #007700">;
<br />&nbsp;}&nbsp;else
<br />&nbsp;&nbsp;</span><span style="color: #0000BB">$fejl&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #DD0000">"Du&nbsp;er&nbsp;ikke&nbsp;admin!"</span><span style="color: #007700">;
<br /></span><span style="color: #0000BB">?&gt;
<br /></span>&lt;html&gt;
<br />&nbsp;&lt;body&gt;
<br />&nbsp;&nbsp;<span style="color: #0000BB">&lt;?php&nbsp;</span><span style="color: #007700">echo&nbsp;</span><span style="color: #0000BB">$fejl</span><span style="color: #007700">;&nbsp;</span><span style="color: #0000BB">?&gt;
<br /></span>&nbsp;&nbsp;&lt;form&nbsp;action="create.php"&nbsp;method="post"&gt;
<br />&nbsp;&nbsp;&nbsp;Navn&lt;input&nbsp;type="text"&nbsp;name="login"&gt;
<br />&nbsp;&nbsp;&nbsp;&lt;br&gt;
<br />&nbsp;&nbsp;&nbsp;Kode&lt;input&nbsp;type="password"&nbsp;name="pass"&gt;
<br />&nbsp;&nbsp;&nbsp;&lt;br&gt;
<br />&nbsp;&nbsp;&nbsp;Igen&lt;input&nbsp;type="password"&nbsp;name="pas2"&gt;
<br />&nbsp;&nbsp;&nbsp;&lt;br&gt;
<br />&nbsp;&nbsp;&nbsp;Admin&lt;input&nbsp;type="password"&nbsp;name="admin"&gt;
<br />&nbsp;&nbsp;&nbsp;&lt;br&gt;
<br />&nbsp;&nbsp;&nbsp;&lt;input&nbsp;type="submit"&nbsp;value="ok"&gt;
<br />&nbsp;&nbsp;&lt;/form&gt;
<br />&nbsp;&lt;/body&gt;
<br />&lt;/html&gt;</span>
</code>
Avatar billede jannek_ek Nybegynder
10. oktober 2006 - 22:06 #12
hov havde jeg lige glemt du kan ikke hente filerne, men skal kopiere teksten fra dem... eller jeg kan lige gøre så du bare kan hente filerne... nu kan du bare gemme dem ned på din computer
Avatar billede michaeljuul Nybegynder
10. oktober 2006 - 22:07 #13
Fint nok tak
Avatar billede michaeljuul Nybegynder
10. oktober 2006 - 22:38 #14
Har lige hentet dem. Kigger på dem om lidt
Avatar billede jannek_ek Nybegynder
10. oktober 2006 - 22:39 #15
ok det lyder fint
Avatar billede michaeljuul Nybegynder
10. oktober 2006 - 22:54 #16
Nu har jeg ændret i db.php så den passer til min MYSql
Men når jeg logger ind kommer jeg bare til en tom side :-( (login.php)
Avatar billede michaeljuul Nybegynder
10. oktober 2006 - 23:18 #17
Kan du fortælle mig hvad jeg skal skrive i de felter?

Navn
Kode
Igen
Admin
Avatar billede jannek_ek Nybegynder
11. oktober 2006 - 15:13 #18
det er til oprettelse af en ny bruger

1 navn på den nye bruger
2 brugerens kode
3 brugerens kode igen
4 en kode du kender så det kun er dig der skal kunne oprette brugere.

4 er sat til "adminkode", men den kan du ændre på anden linie. Hvis alle skal kunne oprette en bruger, skal du bare erstatte
if ($_POST["admin"] == "adminkode")
med
if ($_POST["admin"] == "")

og så kan du slette feltet ud fra admin
Avatar billede michaeljuul Nybegynder
11. oktober 2006 - 16:41 #19
Og tak. Men jeg kan kun komme til den omtalte side hvis jeg skriver create.php i min browser. Jeg kan ikke komme vidre fra index siden :-( Altså den med kun Navn og kode
Avatar billede jannek_ek Nybegynder
11. oktober 2006 - 19:20 #20
nej så skal du lave et link...
<a href="create.php">Opret bruger</a>

men hvis du ikke kan html vil jeg råde dig til at tage en hurtigt html tutorial inde på www.html.dk
Avatar billede michaeljuul Nybegynder
11. oktober 2006 - 19:48 #21
Hvis jeg skriver i min browser http://www.minside.dk/login/create.php
Så kommer jeg til det her:
Navn
Kode
Igen
Admin

Men der står så øverst på siden at.... Du er ikke admin!

Men det er på http://www.minside.dk/login/index.php side jeg ikke kan komme videre fra. Hvad skriver jeg der? i Navn og Kode
Avatar billede jannek_ek Nybegynder
11. oktober 2006 - 19:53 #22
1) udfyld db.php
2) åben createtable.php én gang
3) gå ind på create.php og opret en bruger
4) åben index.php og log ind med den bruger du har oprettet
Avatar billede michaeljuul Nybegynder
11. oktober 2006 - 20:11 #23
Jeg har nu gjort som du skrev. Og når jeg logger ind med den bruger jeg lige har lavet, så kommer jeg bare til http://www.minside.dk/login/login.php og siden er helt blank.
Avatar billede michaeljuul Nybegynder
11. oktober 2006 - 21:42 #24
Har også slettet tabelen som bliver oprettet. Og lavet en ny tabel, samt en ny bruger.
Men ryger stadig tilbage til siden http://www.minside.dk/login/login.php og siden er helt blank. Og ikke til loggedon.php
Avatar billede jannek_ek Nybegynder
11. oktober 2006 - 23:23 #25
jeg har også glemt at tilføje session_start(); i toppen af loggedon.php, men det er ikkeløsningen på problemet, det problem burde først komme når man når frem til loggedon.php...

men prøv at ret linien med mysql_query til
$result = Query("select `name`, `status` from `users` where `name`='".addslashes($_POST["login"])."' and `pass`='".addslashes($_POST["pass"])."'") or die(mysql_error());

og se om der så kommer et output
Avatar billede michaeljuul Nybegynder
12. oktober 2006 - 22:18 #26
Jeg har tilføjet den session_start(); i loggedon.php

Og ændret det andet i index.php

Men det hjælper ikke.
Avatar billede michaeljuul Nybegynder
12. oktober 2006 - 22:18 #27
Ryger stadig tilbage til siden http://www.minside.dk/login/login.php og siden er helt blank.
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