Hej alle
Jeg har et problem, hvor jeg føler mig lidt dum, og derfor godt kunne bruge noget hjælp.
Jeg har en hjemmeside hvor jeg har en restricted medlemsside. For at komme ind på den skal man logge ind ved at indtaste brugernavn og password i en form. Når man trykker submit til formen bliver den sendt til en side jeg har kaldt checklogin.php, som checker login og password op imod min database. Hvis login og password er korrekt bliver personen sendt videre til medlemssiden. Alt dette fungerer fint.
Problemet opstår når jeg gerne vil have at der på medlemssiden f.eks. står: Velkommen Knud (hvis personen altså hedder Knud).
I min database har jeg navne tilknyttet hvert login, og det er altså disse navne jeg skal have fat i afhængig af login'et.
Som det dog er nu så kan jeg kun få den til at skrive enten brugernavnet eller passwordet ud. Det vil sige jeg får altså ikke registreret det tilknyttede navn i min session.
Herunder følger koden for min checklogin.php:
- <?php
- $host="mydbb10.surftown.dk"; // Host name
- $username="****"; // Mysql username
- $password="****"; // Mysql password
- $db_name="****"; // Database name
- $tbl_name="members"; // Table name
-
- // Connect to server and select databse.
- mysql_connect("$host", "$username", "$password")or die("cannot connect");
- mysql_select_db("$db_name")or die("cannot select DB");
-
- // username and password sent from form
- $myusername=$_POST['myusername'];
- $mypassword=$_POST['mypassword'];
-
-
- // To protect MySQL injection (more detail about MySQL injection)
- $myusername = stripslashes($myusername);
- $mypassword = stripslashes($mypassword);
- $myusername = mysql_real_escape_string($myusername);
- $mypassword = mysql_real_escape_string($mypassword);
-
- $sql="SELECT * FROM $tbl_name WHERE username='$myusername' and password='$mypassword'";
- $result=mysql_query($sql);
-
-
- // Mysql_num_row is counting table row
- $count=mysql_num_rows($result);
- // If result matched $myusername and $mypassword, table row must be 1 row
-
- if($count==1){
- // Register $myusername, $mypassword and redirect to file "forhandleservice.php"
- session_register("myusername");
- session_register("mypassword");
- echo "Tak fordi du loggede ind<br>Redirecter...";
- header("location: ../forhandlerservice.php");
- }
- else {
- echo "Forkert brugernavn eller password";
- header("location: ../loginfejl.html");
- }
- ?>
og det her er den kode jeg bruger på i toppen af min medlemsside: forhandlerservice.php:
- <?
- session_start();
- if(!session_is_registered(myusername)){
- header("location:login.html");
- }
- ?>
herefter følger der så en masse html og inde i den html-kode har jeg lige nu stående:
- <?php
- echo "Velkommen " . $myusername;
- ?>
Som altså ganske fint skriver ud: velkommen knud123 (f.eks.), men ikke Knud, som jeg gerne vil have den til og som er en valid entry i min database. Min database har følgende entries: (ID, username, password, name)
Jeg håber der er en herinde der kan skære det ud i pap for mig, for det har jeg behov for. Jeg forstår det simpelthen ikke
Tak,
Morten
Indlæg senest redigeret d. 21.11.2011 15:07 af Bruger #16876