Avatar billede fqthjoe Nybegynder
14. juli 2003 - 13:18 Der er 7 kommentarer og
1 løsning

loginscript via php til mysqlbase

Hej eksperter
Jeg har kigget lidt på forskellige loginscripts fra hotscripts.com men ikke lige fundet det jeg søger.
Jeg har en mysqlbase med navn / kode / niveau (user/admin)
Når man så logger ind skal den se om man er admin eller user, og så afhængig af det bliver man sendt til user.php eller admin.php.
Nogle der kender sådan et script ?
vh thjoe
Avatar billede ahv Nybegynder
14. juli 2003 - 13:25 #1
Noget ala ->

<?php
session_start();
if (isset($_POST['logind'])) {
    $con = mysql_connect("host", "user", "pass");
        mysql_select_db("db");
    $query = mysql_query("SELECT niveau FROM admin WHERE user='$_POST[nick]' AND pass='$_POST[pass]'");
    $row = mysql_fetch_array($query);
    if ($row['niveau'] == 1) {
        $_SESSION['id'] = 1;
        header("Location: user.php");
        exit;
    }
    if ($row['niveau'] == 2) {
        $_SESSION['id'] = 2;
        header("Location: admin.php");
        exit;
    }
}   
?>

<form method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>">
Brugernavn: <input type="text" name="nick"><br/>
Kodeord: <input type="password" name="pass"><br/>
<input type="submit" name="logind" value="Log ind">
</form>


user.php ->

<?php
session_start();
if ($_SESSION['id'] > 0) {
    echo "Denne side kan bruger med status 1 og højere se";
}
?>

<?php
session_start();
if ($_SESSION['id'] > 1) {
    echo "Denne side kan bruger med status 2 og højere se";
}
?>


MySQL tabellen kunne se sådan her ud ->

CREATE TABLE `admin` (
  `id` int(11) NOT NULL auto_increment,
  `user` varchar(50) NOT NULL default '',
  `pass` varchar(50) NOT NULL default '',
  `niveau` tinyint(1) NOT NULL default '',
  PRIMARY KEY  (`id`)
) TYPE=MyISAM AUTO_INCREMENT=2 ;
Avatar billede ahv Nybegynder
14. juli 2003 - 13:25 #2
user.php ->

<?php
session_start();
if ($_SESSION['id'] > 0) {
    echo "Denne side kan bruger med status 1 og højere se";
}
?>

admin.php ->

<?php
session_start();
if ($_SESSION['id'] > 1) {
    echo "Denne side kan bruger med status 2 og højere se";
}
?>
Avatar billede the_legend Nybegynder
14. juli 2003 - 13:26 #3
if($row[niveau] == 'admin'){
include("admin.php");
} elseif(row[niveau] == 'normal'){
include("normal.php");
} else{
include("en fil.php");
}
Avatar billede the_legend Nybegynder
14. juli 2003 - 13:26 #4
ahv's er den bedste så afvis mit svar!
Avatar billede fqthjoe Nybegynder
14. juli 2003 - 13:35 #5
Kanon... lige det....... perfekt.....
Avatar billede fqthjoe Nybegynder
14. juli 2003 - 13:46 #6
Fik lige en fejl: i linien:  $row = mysql_fetch_array($query);

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in C:\web\home\login\start.php on line 7

Kan du se hvad der er galt ?
Avatar billede fqthjoe Nybegynder
14. juli 2003 - 13:49 #7
Glem det :-)
Det virker, mig der knokler rundt i min databasenavn og så tabelnavnet...
Avatar billede exp Juniormester
14. juli 2003 - 13:50 #8
www.sukos.dk/php.login kan LET omskrives :-)
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