Avatar billede doodoo Novice
06. december 2006 - 12:31 Der er 7 kommentarer og
1 løsning

Hvis bruger er X gå til side

Jeg har dette script der tjekker brugernavn og password:

<?
require('confih.php');

mysql_connect($dbhost, $dbuser, $dbpass);
mysql_select_db($database);

$query = mysql_query("SELECT * FROM brugere WHERE brugernavn='$_POST[brugernavn]' AND password='$_POST[password]'");
$antal = mysql_num_rows($query);
if($antal == 1)
{
while ($asra = mysql_fetch_array($query))
{
$brugernavn = $_POST[brugernavn];

session_register("brugernavn");
session_register("session_id()");
header("Location: velkommen.php");
}
}
else
{
echo "<script language='javascript'>alert('Forkert brugernavn / kodeord!');location.href=\"login.php\";</script>";
}
mysql_close();

?>

Nu skal header location så gå til:
Hvis brugernavn == doodoo gå til doodoo.php (hvor doodoo.php har en session der igen tjekker om man har adgang)

Det samme hvis brugernavn er fuckdadig skal den gå til fuckdadig.php

Mange tak!
Avatar billede yvette Nybegynder
06. december 2006 - 13:02 #1
Filen der godkender om logind er ok:

<?php
require("config.php");

mysql_connect($dbhost, $dbuser, $dbpass);
mysql_select_db($database);

$query = mysql_query("SELECT * FROM brugere WHERE brugernavn='$_POST[brugernavn]' AND password='$_POST[password]'");
$brugernavn = $_POST["brugernavn"];
$kodeord = $_POST["kodeord"];
$r = mysql_fetch_array($query);

if($brugernavn==$r["brugernavn"] && $kodeord==$r["kodeord"] && !empty($brugernavn) && !empty($kodeord)) {

session_register("brugernavn");
session_register("kodeord");
session_register("session_id()");

header("Location: velkommen.php");
} else {
echo "<script language='javascript'>alert('Forkert brugernavn / kodeord!');location.href=\"login.php\";</script>";
}
mysql_close();
?>


Også filen du ser når du er logget ind:

<?php
require("config.php");

mysql_connect($dbhost, $dbuser, $dbpass);
mysql_select_db($database);

$query = mysql_query("SELECT * FROM brugere WHERE brugernavn='$_SESSION[brugernavn]'");
$r = mysql_fetch_array($query);

if($_SESSION["brugernavn"]==$r["brugernavn"] && $_SESSION["kodeord"]==$r["kodeord"] && !empty($_SESSION["brugernavn"]) && !empty($_SESSION["kodeord"])) {

echo "You are in :)";

} else {
echo "<script language='javascript'>alert('Du er ikke logget ind!');location.href=\"login.php\";</script>";
}
mysql_close();
?>
Avatar billede yvette Nybegynder
06. december 2006 - 13:03 #2
Behold du bare dine point for dig selv :)
Avatar billede yvette Nybegynder
06. december 2006 - 13:05 #3
Forstod ikke lige meningen med det der "brugernavn".php
Syntes hvertfald det lød lidt åndsvagt :P

De kan ligeså godt bare bruge 1 fil, det er meget nemmere, og tager mindre plads i længden :)
Avatar billede doodoo Novice
06. december 2006 - 13:38 #4
Jeg mente...

Hver bruger skal have deres EGEN side.
Jeg skal bruge det til at lægge billeder på - men kun Thomas kan se Thomas' billeder og rikke kan kun se rikkes billeder... ay?

DEt kan man vist ikke med dette?
Avatar billede doodoo Novice
06. december 2006 - 13:57 #5
og.... nu kan jeg ikke logge ind :O
Avatar billede yvette Nybegynder
06. december 2006 - 21:56 #6
Jo det kan man godt med dette, jeg kigger lige på hvorfor du ikke kan logge ind :P
Avatar billede tiller3 Nybegynder
07. december 2006 - 22:15 #7
Bemaerk lige at du har et sikkerhedshul i din kode. Overvej lige hvad der sker hvis brugeren hedder noget lignende

';drop table brugere;

Hint for sikker php: Brug ALDRIG SQL statements direkte. Brug kun prepared statement. Hvis bare folk overholdt den simple regl ville 99.99% af alle sikkerheds huller med php forsvinde.
Avatar billede doodoo Novice
08. december 2006 - 13:05 #8
lukker
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
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

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