Avatar billede nicocarlos Nybegynder
25. august 2003 - 16:26 Der er 25 kommentarer og
1 løsning

Hvordan connecter jeg til en tabel i en database??

Dette er mit script:


<html>
  <body>
<?php
  if ($submit) {
    $db = mysql_connect("localhost", "username", "password");
    mysql_select_db("alt-muligt", $db);
    $sql = "SELECT auth_level FROM auth WHERE username='$username' AND password='$password'";
    $result = mysql_query($sql);

    while ($row = mysql_fetch_array($result)) {
      $auth_level = $row["auth_level"];
    }

    if (!mysql_num_rows($result)) {
      echo "You are not Authorized for access.";
    } else {
        setcookie('username', $_POST['username'], (time()+2592000), '/', '', 0);
        setcookie('auth_level', $_POST['auth_level'], (time()+2592000), '/', '', 0);
    }

    if ($auth_level == "1") {
      echo "You are logged in as a Guest.<br><a href=\"next.php\">Click here for options</a>";
    } elseif ($auth_level == "2") {
      echo "You have Member level access.<br><a href=\"next.php\">Click here for options</a>";
    } elseif ($auth_level == "3") {
      echo "You have Editor level access.<br><a href=\"next.php\">Click here for options</a>";
    } elseif ($auth_level == "4") {
      echo "You have full Administrative access.<br><a href=\"next.php\">Click here for options</a>";
    }
} else {   
?>
    <form method="POST" action="<?php echo $GLOBALS['PHP_SELF'];?>">
      Name:<input type="text" name="username"><br>
      Password: <input type="password" name="password"><br>
      <input type="submit" name="submit" value="Login">
    </form>
<?php
  }
?>
  </body>
</html>


ekstra spørgsmål:
"("localhost", "username", "password"); " skal jeg udfylde noget af det??
Avatar billede nicocarlos Nybegynder
25. august 2003 - 16:27 #1
min tabel hedder auth
Avatar billede detox Nybegynder
25. august 2003 - 16:40 #2
Du skal rigtig nok udfylde username og password.
Avatar billede nicocarlos Nybegynder
25. august 2003 - 16:53 #3
Ok, ja når folk skal logge ind, men skal jeg skrive username og password i selve scriptet?
Avatar billede skwat Praktikant
25. august 2003 - 16:55 #4
du skal have et user password til din mysql database.

p.s. dette spørgsmål ville nok have mere held i php katagorien. (tror jeg)
Avatar billede nicocarlos Nybegynder
25. august 2003 - 17:01 #5
Ok, jeg har et pass og username til min phpmyadmin. Er det det?
Avatar billede detox Nybegynder
25. august 2003 - 17:02 #6
Ja, prøv det.
Avatar billede nicocarlos Nybegynder
25. august 2003 - 17:05 #7
hvad med localhost??
Avatar billede nicocarlos Nybegynder
25. august 2003 - 17:08 #8
Og hvordan fik jeg fat i min tabel auth i min database?
Avatar billede detox Nybegynder
25. august 2003 - 17:17 #9
'localhost' plejer at være fint nok. Tabellen får du som du har gjort:
$sql = "SELECT auth_level FROM auth WHERE username='$username' AND password='$password'";
Hvis altså din database hedder: 'alt-muligt'.
Avatar billede detox Nybegynder
25. august 2003 - 17:19 #10
Tror du skal ændre den her:
<form method="POST" action="<?php echo $GLOBALS['PHP_SELF'];?>">
til:
<form method="POST" action="<?php echo $_SERVER['PHP_SELF'];?>">
Avatar billede detox Nybegynder
25. august 2003 - 17:20 #11
Eller måske:
<form method="POST" action="<?php echo $PHP_SELF;?>">
Avatar billede nicocarlos Nybegynder
25. august 2003 - 17:28 #12
Notice: Undefined variable: submit in *******\auth.php on line 4
Avatar billede nicocarlos Nybegynder
25. august 2003 - 17:32 #13
har prøvet begge dele..
Avatar billede j_jorgensen Nybegynder
25. august 2003 - 17:35 #14
Du behøver ikke nogen action når det er samme side variablerne bliver sendt til
Avatar billede nicocarlos Nybegynder
25. august 2003 - 17:37 #15
ok, men hvordan kommer scriptet så til at se ud, jeg har arbejdet med det her script i lang tid og den siger hele tiden
  Notice: Undefined variable: submit in *******\auth.php on line 4
bare ændre scriptet, så det virker, takker
Avatar billede detox Nybegynder
25. august 2003 - 17:40 #16
Prøv at ændre:
if ($submit) {
til:
if (isset($_POST['submit']) {
Avatar billede j_jorgensen Nybegynder
25. august 2003 - 17:41 #17
Det skyldes at den checker om $submit er sat til noget...og det er den ikke nødvendigvis. Lav hellere en:

if (isset($submit)) {

...

}
Avatar billede nicocarlos Nybegynder
25. august 2003 - 17:43 #18
Parse error: parse error, unexpected '{' **********\auth.php on line 4, nu kan man heller ikke indtaste user og password mere.
Avatar billede j_jorgensen Nybegynder
25. august 2003 - 17:43 #19
så har du syntaks fejl...
Avatar billede nicocarlos Nybegynder
25. august 2003 - 17:45 #20
Det virker tror jeg, hvordan kan jeg teste det?? Jeg har jo ikke oprettet brugere eller noget??
Avatar billede nicocarlos Nybegynder
25. august 2003 - 17:47 #21
Jeg skal lige have lidt at spise så tester jeg det
Avatar billede j_jorgensen Nybegynder
25. august 2003 - 17:48 #22
så skulle du nok oprette en først ;) via phpmyadmin
Avatar billede nicocarlos Nybegynder
25. august 2003 - 18:20 #23
kan man ikke skrive det i commando linien create user and pass eller sådan noget??
Avatar billede nicocarlos Nybegynder
25. august 2003 - 18:25 #24
Hvordan kan man se, hvilke user og password's du har addet i din database?? Har prøvet at create begge dele men er ikke sikker på om det er gjort rigtigt.
Avatar billede nicocarlos Nybegynder
25. august 2003 - 18:46 #25
i skal nok få point kom bare til at trykke forkert......please svar
Avatar billede nicocarlos Nybegynder
31. august 2003 - 13:50 #26
jeg har fundet ud af det hele og siden ik ikke svarer. :)
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
Computerworld tilbyder specialiserede kurser i database-management

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