Avatar billede kongfjong Nybegynder
20. februar 2005 - 19:06 Der er 19 kommentarer og
1 løsning

Problem med login-system

Hey;

Jeg har et problem med mit logi-system.

Jeg har en fil, login.php som indeholder en form, og kalder sig selv.

Mit problem er, at de variabler jeg ville bruge til at tjekke på ikke bliver tildelt nogen værdi, hvilket jeg ikke forstår.

Den del der problem med ser I her:

<?php
session_start();

print "<div id=\"rightmenu\">
    <form name=\"login\" method=\"post\" action=\"$_SERVER[PHP_SELF]\" enctype=\"text/plain\" class=\"login\">
    Login:<br>
    <input name=\"user\" maxlength=\"20\" class=\"loginnavn\"><br>
    Password:<br>
    <input type=\"password\" name=\"pass\" maxlength=\"20\" class=\"loginPass\">
    <input type=\"submit\" name=\"submitLogin\" value=\"Log på!\" class=\"loginKnap\">
    </form>
</div>"

$username = $_POST[user];
$password = $_POST[pass];

print $username;
print $password;
?>

Det er et stykke jeg bruger til at teste på, og af en eller anden grund, bliver $username og $password ikke tildelt nogen værdi...

Kan I se problemet?
Avatar billede kongfjong Nybegynder
20. februar 2005 - 19:08 #1
Skal siges, at i ovenstående, får jeg følgende problem:

Parse error: parse error in D:\Apache Group\Apache2\htdocs\test\login.php on line 14

$username = $_POST[user]; <- Linje 14
Avatar billede leif Seniormester
20. februar 2005 - 19:09 #2
Du mangler ; efter din print !
Avatar billede leif Seniormester
20. februar 2005 - 19:09 #3
<?php
session_start();

print "<div id=\"rightmenu\">
    <form name=\"login\" method=\"post\" action=\"$_SERVER[PHP_SELF]\" enctype=\"text/plain\" class=\"login\">
    Login:<br>
    <input name=\"user\" maxlength=\"20\" class=\"loginnavn\"><br>
    Password:<br>
    <input type=\"password\" name=\"pass\" maxlength=\"20\" class=\"loginPass\">
    <input type=\"submit\" name=\"submitLogin\" value=\"Log på!\" class=\"loginKnap\">
    </form>
</div>";

$username = $_POST[user];
$password = $_POST[pass];

print $username;
print $password;
?>
Avatar billede kongfjong Nybegynder
20. februar 2005 - 19:16 #4
Ja, hehe. Det løste self det problem:)

Problemet er så, at jeg gerne vil have printet de to variable ud som kommer via formen, altså $username og $password.

Men den printer intet...
Avatar billede leif Seniormester
20. februar 2005 - 19:17 #5
Prøv lige:
<?php
session_start();

print "<div id=\"rightmenu\">
    <form name=\"login\" method=\"post\" action=\"$_SERVER[PHP_SELF]\" enctype=\"text/plain\" class=\"login\">
    Login:<br>
    <input name=\"user\" maxlength=\"20\" class=\"loginnavn\"><br>
    Password:<br>
    <input type=\"password\" name=\"pass\" maxlength=\"20\" class=\"loginPass\">
    <input type=\"submit\" name=\"submitLogin\" value=\"Log på!\" class=\"loginKnap\">
    </form>
</div>";

$username = $_POST['user'];
$password = $_POST['pass'];

print $username;
print $password;
?>
Avatar billede kongfjong Nybegynder
20. februar 2005 - 19:21 #6
Prøvede:

<?php
session_start();

print "<div id=\"rightmenu\">
    <form name=\"login\" method=\"post\" action=\"$_SERVER[PHP_SELF]\" enctype=\"text/plain\" class=\"login\">
    Login:<br>
    <input name=\"user\" maxlength=\"20\" class=\"loginnavn\"><br>
    Password:<br>
    <input type=\"password\" name=\"pass\" maxlength=\"20\" class=\"loginPass\">
    <input type=\"submit\" name=\"submitLogin\" value=\"Log på!\" class=\"loginKnap\">
    </form>
</div>";

$username = $_POST['user'];
$password = $_POST['pass'];

print "Dit brugernavn er: $username<br>";
print "Dit kodeord er: $password";
?>

Gav ingen forandring, ud over self "Dit brugernavn er: " og "Dit kodeord er: ":)
Avatar billede leif Seniormester
20. februar 2005 - 19:30 #7
Prøv med:
<?php
session_start();

print "<div id=\"rightmenu\">
    <form name=\"login\" method=\"get\" action=\"$_SERVER[PHP_SELF]\" enctype=\"text/plain\" class=\"login\">
    Login:<br>
    <input name=\"user\" maxlength=\"20\" class=\"loginnavn\"><br>
    Password:<br>
    <input type=\"password\" name=\"pass\" maxlength=\"20\" class=\"loginPass\">
    <input type=\"submit\" name=\"submitLogin\" value=\"Log på!\" class=\"loginKnap\">
    </form>
</div>";

$username = $_GET['user'];
$password = $_GET['pass'];

print $username;
print $password;
?>
Avatar billede kongfjong Nybegynder
20. februar 2005 - 19:40 #8
Det lykkedes sgu...
Avatar billede kongfjong Nybegynder
20. februar 2005 - 19:41 #9
Dog ikke fedt, da kodeord så står i url-linjen...
Avatar billede kongfjong Nybegynder
20. februar 2005 - 19:43 #10
Oprindeligt havde jeg det faktisk i to filer, index.php og login.php:

INDEX.PHP:
<?php
session_start();
?>
<div id="rightmenu">
    <form name="login" method="post" action="login.php" enctype="text/plain" class="login">
    Login:<br>
    <input name="user" maxlength="20" class="loginnavn"><br>
    Password:<br>
    <input type="password" name="pass" maxlength="20" class="loginPass">
    <input type="submit" name="submitLogin" value="Log på!" class="loginKnap">
    </form>
</div>

LOGIN.PHP:
<?php
session_start();

$username = $_GET['user'];
$password = $_GET['pass'];

print "Dit brugernavn er: $username<br>";
print "Dit kodeord er: $password";

?>

Gør jeg det, så viser den igen intet, ud over:
"Dit brugernavn er:
Dit kodeord er: "
Avatar billede leif Seniormester
20. februar 2005 - 19:49 #11
Den du skriver til sidst vil aldrig virke ! Der skal login.php se ud som:
<?php
session_start();

$username = $_POST['user'];
$password = $_POST['pass'];

print "Dit brugernavn er: $username<br>";
print "Dit kodeord er: $password";

?>
Avatar billede kongfjong Nybegynder
20. februar 2005 - 19:51 #12
Det virker ikke...
Avatar billede kongfjong Nybegynder
20. februar 2005 - 19:53 #13
Prøvede lige i Mozilla, bare sådan for ordens skyld, og der virker det desværre heller ikke:)
Avatar billede leif Seniormester
20. februar 2005 - 19:55 #14
Bare som test, hvad sker der hvis du laver login.php:
<?php
session_start();

print "Dit brugernavn er: $user<br>";
print "Dit kodeord er: $pass";

?>
Avatar billede kongfjong Nybegynder
20. februar 2005 - 19:56 #15
Intet.

Kan det have noget at gøre med, at jeg i index.php skal registrere nogle session-variabler?
Avatar billede leif Seniormester
20. februar 2005 - 20:00 #16
Burde det ikke, men hvad sker der hvis du fjerner session_start(); i begge filer !
Avatar billede kongfjong Nybegynder
20. februar 2005 - 20:06 #17
Intet...:)
Avatar billede kongfjong Nybegynder
20. februar 2005 - 20:06 #18
Har du prøvet at teste det hos dig?
Avatar billede kongfjong Nybegynder
20. februar 2005 - 21:46 #19
Så se det ud til at jeg fandt ud af det.

Det viser sig, at php åbenbart ikke kan lide teksten: enctype="text/plain"

Så den fjernede jeg, og nu virker det...
Avatar billede leif Seniormester
20. februar 2005 - 21:49 #20
Lyder godt du fandt "fejlen", troede ærligt ikke det var det !
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