Avatar billede overgaard1605 Nybegynder
01. februar 2004 - 21:01 Der er 12 kommentarer og
2 løsninger

Login script

har følgende kode:

<?

$realbruger = "admin"; //Det rigtige brugernavn

if($action == "login"){

if(!$brugernavn) echo "Du har ikke indtastet et brugernavn!";

else{

if($brugernavn == $realbruger){
  header("location: startadr.php");
}


else echo "Der er fejl i enten brugernavn eller password!";

}
}
else{
?>


<form action="<? echo $PHP_SELF; ?>?action=login" method="post">
<table><tr>
<td><font size="2" face="Verdana">Brugernavn:</font></td>
<td><input type="password" name="brugernavn"></td></tr><tr>
<td></td><td><input type="submit" value="Login"></td></tr></table>
</form>


<?
}
?>

men får følgende fejl:

Warning: Cannot modify header information - headers already sent by

fatter det ikke, det har virket... nogle der ved hvor fejlen ligger
Avatar billede Slettet bruger
01. februar 2004 - 21:08 #1
Du har kun en form?
Avatar billede triggy Nybegynder
01. februar 2004 - 21:08 #2
Hvornår opstår fejlen?

Er det med det samme, eller er det når du har indtastet et brugernavn ?
Avatar billede Slettet bruger
01. februar 2004 - 22:45 #3
Er der mon et mellemrum, en tab, et linieskift eller nogetsomhelst andet før den kode, du har vist her?

Fejlen er nemlig, at serveren afsender alle headers, når det første output bliver skrevet. Når det først er gjort, kan du ikke sende videre til en anden side med header() bagefter.
Avatar billede overgaard1605 Nybegynder
01. februar 2004 - 23:18 #4
hele koden på siden ser sådan ud:

<html>
<head>
<title>Login-system</title>
</head>
<body bgcolor="#FFFFFF">
<?
$realbruger = "admin"; //Det rigtige brugernavn

if($action == "login"){
if(!$brugernavn) echo "Du har ikke indtastet et brugernavn!";
else{
if($brugernavn == $realbruger){
  header("location: startadr.php");
}
else echo "Der er fejl i enten brugernavn eller password!";
}
}
else{
?>
<form action="<? echo $PHP_SELF; ?>?action=login" method="post">
<table><tr>
<td><font size="2" face="Verdana">Brugernavn:</font></td>
<td><input type="password" name="brugernavn"></td></tr><tr>
<td></td><td><input type="submit" value="Login"></td></tr></table>
<?
}
?>
</form>
</body>
</html>

fejlen kommer når jeg har indtastet brugernavnet..
Kan stadig ikke finde fejlen.
Det sjove er at det har fungeret i ca. 2 måneder uden problemmer
Avatar billede ztyxx Nybegynder
01. februar 2004 - 23:21 #5
<html>
<head>
<title>Login-system</title>
</head>
<body bgcolor="#FFFFFF">
bliver betragtet som output, sæt din phpkode før dette
Avatar billede Slettet bruger
02. februar 2004 - 00:19 #6
Så den rettede udgave er:

<?
$realbruger = "admin"; //Det rigtige brugernavn

if($action == "login"){
if(!$brugernavn) echo "Du har ikke indtastet et brugernavn!";
else{
if($brugernavn == $realbruger){
  header("location: startadr.php");
}
else echo "Der er fejl i enten brugernavn eller password!";
}
}
else{
?>
<html>
<head>
<title>Login-system</title>
</head>
<body bgcolor="#FFFFFF">
<form action="<? echo $PHP_SELF; ?>?action=login" method="post">
<table><tr>
<td><font size="2" face="Verdana">Brugernavn:</font></td>
<td><input type="password" name="brugernavn"></td></tr><tr>
<td></td><td><input type="submit" value="Login"></td></tr></table>
<?
}
?>
</form>
</body>
</html>
Avatar billede Slettet bruger
02. februar 2004 - 00:21 #7
Og jeg kan ikke forstå, hvis det har virket? Der må være lavet om på serverindstillinger. Måske var der sat automatisk output-buffering op før, og det er blevet slået fra.
Avatar billede sukos Juniormester
02. februar 2004 - 01:00 #8
jahhh, sad engang med adobe's go-live og den lavede lige præcis en header pr. deafult!

På en win, ja, så rykker notepad+:

http://www.mypeecee.org/rogsoft/
Avatar billede fragze Juniormester
02. februar 2004 - 15:51 #9
<?
ob_start();
$realbruger = "admin"; //Det rigtige brugernavn

if($action == "login"){

if(!$brugernavn) echo "Du har ikke indtastet et brugernavn!";

else{

if($brugernavn == $realbruger){
  header("location: startadr.php");
}


else echo "Der er fejl i enten brugernavn eller password!";

}
}
else{
?>


<form action="<? echo $PHP_SELF; ?>?action=login" method="post">
<table><tr>
<td><font size="2" face="Verdana">Brugernavn:</font></td>
<td><input type="password" name="brugernavn"></td></tr><tr>
<td></td><td><input type="submit" value="Login"></td></tr></table>
</form>


<?
}
?>
<? ob_end_flush(); ?>
Avatar billede fragze Juniormester
02. februar 2004 - 15:52 #10
<? ob_start(); ?>
<html>
<head>
<title>Login-system</title>
</head>
<body bgcolor="#FFFFFF">
<?
$realbruger = "admin"; //Det rigtige brugernavn

if($action == "login"){
if(!$brugernavn) echo "Du har ikke indtastet et brugernavn!";
else{
if($brugernavn == $realbruger){
  header("location: startadr.php");
}
else echo "Der er fejl i enten brugernavn eller password!";
}
}
else{
?>
<form action="<? echo $PHP_SELF; ?>?action=login" method="post">
<table><tr>
<td><font size="2" face="Verdana">Brugernavn:</font></td>
<td><input type="password" name="brugernavn"></td></tr><tr>
<td></td><td><input type="submit" value="Login"></td></tr></table>
<?
}
?>
</form>
</body>
</html>
<? ob_end_flush(); ?>
Avatar billede overgaard1605 Nybegynder
02. februar 2004 - 15:59 #11
ztyxx eller  sandbox... det virker, hvem af jer skal have point... smid et svar
Avatar billede Slettet bruger
02. februar 2004 - 16:24 #12
Vi kunne jo dele?
Avatar billede ztyxx Nybegynder
02. februar 2004 - 21:25 #13
god ide;-)
Avatar billede ztyxx Nybegynder
02. februar 2004 - 22:37 #14
takker :-)
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