Avatar billede venchil Nybegynder
17. april 2005 - 15:32 Der er 38 kommentarer og
1 løsning

Admin loginsystem

Jeg er ved at lave et admin login-system til min side, og jeg har taget udgangspunkt i nogle artikler her på eksperten.

Det går fejlfrit indtil jeg checker mine informationer, og der er tilsyneladende bøvl med nogle sessions, selvom jeg ikke lige kan gennemskue hvad der skulle være galt.


Parse error: parse error, unexpected T_VARIABLE, expecting '(' in /customers/darkcloud.dk/darkcloud.dk/httpd.www/animepark/madskjaer/content_admin_side.php on line 5

----------------------------------------

<?php

session_start();
$_SESSION['brugernavn'] = "$brugernavn";
$_SESSION['password'] = "$password";

$brugernavn = $_POST['brugernavn'];
$password = $_POST['password'];

if(empty($brugernavn) || empty($password))
{
header("location. forside.php?id=content_admin_login.html");
exit;
}
else
{
$rigtigt_brugernavn = 'onkelcarl';
$rigtigt_password = 'hemmelighed';

if($brugernavn == $rigtigt_brugernavn && $password == $rigtigt_password)
{
include("content_admin_side.php");
}
else
{
echo "Det indtastede brugernavn/kodeord var ikke korrekt";
echo "<br><br>";

echo "Tryk <a href='forside.php?id=content_admin_login.html'>her</a> for at prøve igen";
}
}

?>
----------------------------------------
Avatar billede busschou Praktikant
17. april 2005 - 15:35 #1
skal de ikke byttes om?
$brugernavn = $_POST['brugernavn'];
$password = $_POST['password'];
session_start();
$_SESSION['brugernavn'] = $brugernavn;
$_SESSION['password'] = $password;
Avatar billede mjl Nybegynder
17. april 2005 - 15:36 #2
Ja - byt lige om...
Avatar billede mjl Nybegynder
17. april 2005 - 15:43 #3
Det er nok din eneste fejl, med mindre, der er mere kode end den du viser her...
Avatar billede mjl Nybegynder
17. april 2005 - 15:47 #4
Er du der?
Avatar billede venchil Nybegynder
17. april 2005 - 15:50 #5
Jada... Er det noget jeg har visforstået, eller skal sessions altid være i starten af et dokument?
Avatar billede venchil Nybegynder
17. april 2005 - 15:50 #6
Prøver lige :)
Avatar billede busschou Praktikant
17. april 2005 - 15:52 #7
du kan ikke sætte dine sessions lig en variabel før den er erklæret det er alt
Avatar billede mjl Nybegynder
17. april 2005 - 15:52 #8
Ja i starten, men de får jo først deres værdi efter de er sat - ikke smart...
Avatar billede venchil Nybegynder
17. april 2005 - 15:53 #9
Det virker desværre ikke. Fejlen er stadig den samme, nu ser mit dokument sådan ud:
----------------------------------------
<?php

$brugernavn = $_POST['brugernavn'];
$password = $_POST['password'];

session_start();
$_SESSION['brugernavn'] = "$brugernavn";
$_SESSION['password'] = "$password";

if(empty($brugernavn) || empty($password))
{
header("location. forside.php?id=content_admin_login.html");
exit;
}
else
{
$rigtigt_brugernavn = 'Kjaer';
$rigtigt_password = 'oc0941';

if($brugernavn == $rigtigt_brugernavn && $password == $rigtigt_password)
{
include("content_admin_side.php");
}
else
{
echo "Det indtastede brugernavn/kodeord var ikke korrekt";
echo "<br><br>";

echo "Tryk <a href='forside.php?id=content_admin_login.html'>her</a> for at prøve igen";
}
}

?>
----------------------------------------
Avatar billede venchil Nybegynder
17. april 2005 - 15:53 #10
(har lige ændret passwordet til noget andet) tag jer ikke af det.
Avatar billede mjl Nybegynder
17. april 2005 - 15:54 #11
<?php
session_start();
$brugernavn = 'onkelcarl';
$password = 'hemmelighed';
$_SESSION['brugernavn'] = "$brugernavn";
$_SESSION['password'] = "$password";

if(empty($brugernavn) || empty($password))
{
header("location. forside.php?id=content_admin_login.html");
exit;
}
else
{
$rigtigt_brugernavn = 'onkelcarl';
$rigtigt_password = 'hemmelighed';

if($brugernavn == $rigtigt_brugernavn && $password == $rigtigt_password)
{
include("content_admin_side.php");
}
else
{
echo "Det indtastede brugernavn/kodeord var ikke korrekt";
echo "<br><br>";

echo "Tryk <a href='forside.php?id=content_admin_login.html'>her</a> for at prøve igen";
}
}

?>
Avatar billede busschou Praktikant
17. april 2005 - 15:54 #12
du skal fjerne gåseøjenene som det jeg skrev!
Avatar billede busschou Praktikant
17. april 2005 - 15:54 #13
$_SESSION['brugernavn'] = "$brugernavn";
$_SESSION['password'] = "$password";
skal være
$_SESSION['brugernavn'] = $brugernavn;
$_SESSION['password'] = $password;
Avatar billede mjl Nybegynder
17. april 2005 - 15:56 #14
<?php
session_start();
$brugernavn = $_POST['brugernavn'];
$password = $_POST['password'];

$_SESSION['brugernavn'] = $brugernavn;
$_SESSION['password'] = $password;

if(empty($brugernavn) || empty($password))
{
header("location. forside.php?id=content_admin_login.html");
exit;
}
else
{
$rigtigt_brugernavn = 'onkelcarl';
$rigtigt_password = 'hemmelighed';

if($brugernavn == $rigtigt_brugernavn && $password == $rigtigt_password)
{
include("content_admin_side.php");
}
else
{
echo "Det indtastede brugernavn/kodeord var ikke korrekt";
echo "<br><br>";

echo "Tryk <a href='forside.php?id=content_admin_login.html'>her</a> for at prøve igen";
}
}

?>
Avatar billede busschou Praktikant
17. april 2005 - 15:58 #15
som skrevet 15:35:00  ;o)
Avatar billede mjl Nybegynder
17. april 2005 - 15:58 #16
Ja - nemlig...
Avatar billede mjl Nybegynder
17. april 2005 - 15:58 #17
Blander mig bare - går ikke efter points :)
Avatar billede busschou Praktikant
17. april 2005 - 15:59 #18
hæhæ
Avatar billede mjl Nybegynder
17. april 2005 - 15:59 #19
Har en fornmemmelse af, at han ikke viser hele koden...
Avatar billede barklund Nybegynder
17. april 2005 - 16:01 #20
Men din oprindeligefejl sagde, at din PHP manglede en parentes i linje 5 - hvilken linje er linje 5 i din fil? Hvis fejlen altså stadig rapporteres på linje 5?
Avatar billede busschou Praktikant
17. april 2005 - 16:02 #21
barklund er klog
Vi har set den forkerte side!
Fejlen er på den side den includer!
Avatar billede mjl Nybegynder
17. april 2005 - 16:03 #22
Nemlig, barklund - det er det vi efterlyser...
Avatar billede venchil Nybegynder
17. april 2005 - 16:03 #23
Hmmm... den fil jeg inkluderer, hvis brugernavnet er ok er:

<?php
$brugernavn = "Kjaer";
$password = "hemmeligt";

if $_SESSION['brugernavn'] == $brugernavn && $_SESSION['password'] == $password {
echo "Dette er en beskyttet side";
}
else {
Der opstod en fejl under oprettelsen til admin-siden.
}
?>

Får stadig linje 5-fejlen
Avatar billede busschou Praktikant
17. april 2005 - 16:04 #24
<?php
$brugernavn = "Kjaer";
$password = "hemmeligt";

if ($_SESSION['brugernavn'] == $brugernavn && $_SESSION['password'] == $password) {
echo "Dette er en beskyttet side";
}
else {
Der opstod en fejl under oprettelsen til admin-siden.
}
?>
Avatar billede busschou Praktikant
17. april 2005 - 16:04 #25
syntaksen er
if (betingelse){udførsel}
der parantesen manglede :o)
Avatar billede venchil Nybegynder
17. april 2005 - 16:08 #26
Er det ikke den samme kode, busschou?
Avatar billede busschou Praktikant
17. april 2005 - 16:08 #27
Nej du mangler en parantes rundt om udtrykket i linje 5
Avatar billede mjl Nybegynder
17. april 2005 - 16:10 #28
Her : ($_SESSION['brugernavn'] == $brugernavn && $_SESSION['password'] == $password)
Avatar billede busschou Praktikant
17. april 2005 - 16:13 #29
virker det eller giver den nye fejl?
Avatar billede mjl Nybegynder
17. april 2005 - 16:20 #30
Fejlen har flyttet sig til linie 9 og lyder :

Parse error: parse error, unexpected T_STRING in /customers/darkcloud.dk/darkcloud.dk/httpd.www/animepark/madskjaer/content_admin_side.php on line 9
Avatar billede busschou Praktikant
17. april 2005 - 16:21 #31
<?php
$brugernavn = "Kjaer";
$password = "hemmeligt";

if ($_SESSION['brugernavn'] == $brugernavn && $_SESSION['password'] == $password) {
echo "Dette er en beskyttet side";
}
else {
echo"Der opstod en fejl under oprettelsen til admin-siden.";
}
?>
Avatar billede busschou Praktikant
17. april 2005 - 16:21 #32
det var jo næsten klart :o)
Avatar billede mjl Nybegynder
17. april 2005 - 16:22 #33
He he
Avatar billede venchil Nybegynder
17. april 2005 - 18:01 #34
Nu virker det optimalt. Mjl, du må også gerne lægge et svar, dig og busschou deler lige over tror jeg :)
Avatar billede mjl Nybegynder
17. april 2005 - 18:52 #35
Nej nej - giv points til [busschou] - han var først, og jeg ville bare være lidt med, for selskabs skyld! :)
Avatar billede venchil Nybegynder
17. april 2005 - 20:05 #36
Hmmm... fik lige en fejl igen :P

Warning: session_start(): Cannot send session cookie - headers already sent by (output started at /customers/darkcloud.dk/darkcloud.dk/httpd.www/animepark/madskjaer/forside.php:10) in /customers/darkcloud.dk/darkcloud.dk/httpd.www/animepark/madskjaer/content_admin_checklogin.php on line 4

Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at /customers/darkcloud.dk/darkcloud.dk/httpd.www/animepark/madskjaer/forside.php:10) in /customers/darkcloud.dk/darkcloud.dk/httpd.www/animepark/madskjaer/content_admin_checklogin.php on line 4

De forekommer igen i checklogin.
Mine sider ser sådan ud:

CONTENT_ADMIN_CHECKLOGIN.PHP:
----------------------------------------
<div id="titel"><b><span class="b">Administration</span></b></div>

<?php
session_start();
$brugernavn = $_POST['brugernavn'];
$password = $_POST['password'];

$_SESSION['brugernavn'] = $brugernavn;
$_SESSION['password'] = $password;

if(empty($brugernavn) || empty($password))
{
header("location. forside.php?id=content_admin_login.html");
exit;
}
else
{
$rigtigt_brugernavn = 'Carlsmart';
$rigtigt_password = 'hemmeligt';

if($brugernavn == $rigtigt_brugernavn && $password == $rigtigt_password)
{
include("content_admin_side.php");
}
else
{
echo "Det indtastede brugernavn/kodeord var ikke korrekt";
echo "<br><br>";

echo "Tryk <a href='forside.php?id=content_admin_login.html'>her</a> for at prøve igen";
}
}

?>
----------------------------------------





CONTENT_ADMIN_SIDE.PHP:
----------------------------------------
<div id="titel"><b><span class="b">Administration</span></b></div>
<?php
$brugernavn = "Carlsmart";
$password = "hemmeligt";

if ($_SESSION['brugernavn'] == $brugernavn && $_SESSION['password'] == $password) {
echo "Dette er en beskyttet side";
}
else {
echo "Der opstod en fejl under oprettelsen til admin-siden.";
}
?>
----------------------------------------

Nedenunder de errors kommer admin-siden fejlfrit som før :)
Avatar billede busschou Praktikant
17. april 2005 - 20:13 #37
så vidt jeg har forstået skal alt html kode være under der hvor du sætter din header
prøv
---
<?php
session_start();
$brugernavn = $_POST['brugernavn'];
$password = $_POST['password'];

$_SESSION['brugernavn'] = $brugernavn;
$_SESSION['password'] = $password;

if(empty($brugernavn) || empty($password))
{
header("location. forside.php?id=content_admin_login.html");
exit;
}
else
{
$rigtigt_brugernavn = 'Carlsmart';
$rigtigt_password = 'hemmeligt';
echo "<div id=\"titel\"><b><span class=\"b\">Administration</span></b></div>";
if($brugernavn == $rigtigt_brugernavn && $password == $rigtigt_password)
{
include("content_admin_side.php");
}
else
{
echo "Det indtastede brugernavn/kodeord var ikke korrekt";
echo "<br><br>";

echo "Tryk <a href='forside.php?id=content_admin_login.html'>her</a> for at prøve igen";
}
}

?>
Avatar billede venchil Nybegynder
18. april 2005 - 18:05 #38
Nu ser fejlen sådan ud:

Warning: session_start(): Cannot send session cookie - headers already sent by (output started at /customers/darkcloud.dk/darkcloud.dk/httpd.www/animepark/madskjaer/forside.php:10) in /customers/darkcloud.dk/darkcloud.dk/httpd.www/animepark/madskjaer/content_admin_checklogin.php on line 2

Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at /customers/darkcloud.dk/darkcloud.dk/httpd.www/animepark/madskjaer/forside.php:10) in /customers/darkcloud.dk/darkcloud.dk/httpd.www/animepark/madskjaer/content_admin_checklogin.php on line 2
Avatar billede venchil Nybegynder
20. april 2005 - 15:50 #39
Ehmmm.... evt nogen der gidder at hjælpe? jeg har prøvet næsten alt. Ved godt at jeg har accepteret svaret.
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