Avatar billede traxis Nybegynder
24. oktober 2005 - 20:35 Der er 13 kommentarer og
1 løsning

Hjælp til velkomstbesked ved login

Hey, jeg har et lidt specielt login-system som jeg har lidt problemer med.
Jeg vil gerne have det sådan, at når man er logget ind og bliver redirected til f.eks admin.php, så står der "Velkommen `brugernavn`", men jeg kan ikke rigtig finde ud af hvordan jeg skal gøre det.

Når man logger ind går den videre til godkend.php som derefter sender videre til admin.php

Her er min godkend.php:

<?
$brugernavn = $_REQUEST["brugernavn"];
$kodeord = $_REQUEST["kodeord"];
$query = mysql_query("SELECT brugernavn, kodeord, navn FROM users WHERE brugernavn='$brugernavn' AND kodeord='$kodeord'");

if (mysql_num_rows($query) == "0")
{
    echo("<center><br><br><h2>Access denied!</h2><br></center>");
}
else
{
    $r = mysql_fetch_array($query);
    $_SESSION["s_navn"] = $r["navn"];
    redirect("?s=admin");
}
?>

På en eller anden måde burde jeg kunne hive den person som logger ind's brugernavn frem og skrive det via echo på en eller anden måde?

Håber der er en eller flere, som kan hjælpe mig.
Avatar billede udvikler Nybegynder
24. oktober 2005 - 20:39 #1
Brug sessions, kald session'en frem og indsæt efterfølgene:

echo "Velkommen $_REQUEST["brugernavn"];";
Avatar billede nielle Nybegynder
24. oktober 2005 - 20:40 #2
Du gemmer bare brugernavnet i din session:

<?
$brugernavn = $_REQUEST["brugernavn"];
$kodeord = $_REQUEST["kodeord"];
$query = mysql_query("SELECT brugernavn, kodeord, navn FROM users WHERE brugernavn='$brugernavn' AND kodeord='$kodeord'");

if (mysql_num_rows($query) == "0")
{
    echo("<center><br><br><h2>Access denied!</h2><br></center>");
}
else
{
    $r = mysql_fetch_array($query);
    $_SESSION["s_navn"] = $r["navn"];
    $_SESSION["brugernavn"] = $r["brugernavn"];
    redirect("?s=admin");
}
?>

- og så udskriver du det derfra på den næste side.
Avatar billede nielle Nybegynder
24. oktober 2005 - 20:41 #3
Skulle egentlig have været:

$_SESSION["brugernavn"] = $_REQUEST["brugernavn"];

- men den anden kode virkar faktisk også. :^)
Avatar billede traxis Nybegynder
24. oktober 2005 - 20:44 #4
Hehe du er for sej nielle :D Hvordan udskriver jeg det så på den næste side?
Ved godt det er noget med echo "Velkommen $_REQUEST["brugernavn"];";

Men jeg skal da også kontakte tabellen for at få adgang? Er meget ked af det, men er blevet så snotforvirret over det script :S
Avatar billede udvikler Nybegynder
24. oktober 2005 - 20:46 #5
Nej, du skal netop ikke kontakte tabellen, for du har jo overført adgangen fra den anden side via en session :)

Hvis det ikke virker, så prøv at connecte ved hjælp af denne kode:

<?
$host="localhost";
$user="Brugernavn";
$pass="Kodeord";
$db="Databasenavn";

mysql_connect($host,$user,$pass);
mysql_select_db($db);
?>

Du ændre selvfølgelig efter behov
Avatar billede nielle Nybegynder
24. oktober 2005 - 20:46 #6
<?
session_start();  // Altid session_start() først!

echo "Velkommen " . $_SESSION["brugernavn"];
?>
Avatar billede nielle Nybegynder
24. oktober 2005 - 20:47 #7
... og der skal selvfølgelig også være en session_start() på den side som sætter dion session.
Avatar billede traxis Nybegynder
24. oktober 2005 - 20:48 #8
Hehe, nielle, jeg har det her i toppen af min index.php:

<?
ob_start();
session_start();
include("functions.php");
?>

Så regner med det er nok ;)

Men prøver lige og ser om det virker nu så..
Avatar billede traxis Nybegynder
24. oktober 2005 - 20:51 #9
Argh, nielle, hvordan pokker giver jeg dig så pointene ? :P Aner ikk hvordan man gør.. Men fik det til at virke, takker rigtig mange gange :)
Avatar billede nielle Nybegynder
24. oktober 2005 - 20:51 #10
Det ser fint ud - dog burde du faktisk ikke have brug for ob_start(), hvis du ellers koder pænt og ordentligt :^)
Avatar billede nielle Nybegynder
24. oktober 2005 - 20:53 #11
Du beder mig såmæn bare om at lægge et svar. Jeg lægger normalt aldrig et svar før at jeg er sikker på at den der spørger rent faktisk har fået den rigtige løsning på sit problem.

... og et svar :^)
Avatar billede traxis Nybegynder
24. oktober 2005 - 20:56 #12
Takker mange gange igen :) Har kæmpet med det i hundrede år nu.. :)
Avatar billede nielle Nybegynder
05. november 2005 - 08:28 #13
Husk nu også at acceptere svaret ;^)
Avatar billede nielle Nybegynder
21. november 2005 - 18:44 #14
??
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