14. marts 2019 - 21:19 Der er 5 kommentarer og
1 løsning

Mit CMS system virker ikke

Jeg har lavet et login System i PHP, men selvom brugernavn og kodeordet passer, og jeg har fået output på mine variabler, og det skulle virke, uanset hvad så er mit IF = false.

<?php
session_start();
$_SESSION["login"] = FALSE;
?>
<html>
<head>
<title>"Melding.dk"</title>

</head>
<body>
<style>
body {background-color: powderblue;}
p {border-style: outset;}
</style>
<?php
$navn = $_POST["navn"];
$pass = $_POST["pass"];
$id = $_POST["id"]; 

$bnavn = file("http://www.melding.dk/data/bruger/bruger_navn.txt")[$id];
$bpass = file("http://www.melding.dk/data/bruger/bruger_pass.txt")[$id];   
if($navn ===$bnavn and $pass ===$bpass)
{
echo "<p>Admin menu</p>";
echo"Welcome back $navn";
$_SESSION["login"] = TRUE;
menu();
}

else
{
echo "<p>Login Error</p>";
echo"Wrong login or null";
echo"<br> $navn og $bnavn"; 
echo "<br><a href='index.php'>Logout</a>"; 
$_SESSION["login"] = FALSE;
}

function menu()
{

echo "<br><a href='users.php'>Users</a>";
echo "<br><a href='index.php'>Logout</a>"; 
}
?>
</body>
</html>
Slater Ekspert
14. marts 2019 - 22:05 #1
Det er muligvis den dårligste sikkerhed jeg nogensinde har set. Ikke kun opbevarer du passwords i plaintext, men de ligger i txt-filer som enhver kan tilgå via URL'en http://www.melding.dk/data/bruger/bruger_pass.txt

Men hvis det skal være, så brug var_dump() til at se hvad $bnavn og $bpass indeholder. Det giver som regel en ret god indikation af problemet.
arne_v Ekspert
14. marts 2019 - 22:16 #2
file funktionen laeser linier ind *inklusive* newline (medmindre option FILE_IGNORE_NEW_LINES er brugt).

Det skal nok faa test til at fejle.
arne_v Ekspert
14. marts 2019 - 22:16 #3
Og ja designet er aldeles haabloest sikkerhedsmaessigt.
14. marts 2019 - 22:19 #4
jeg har checket variablerne, og det passer, jeg forstår bare ikke hvad der er galt.
men jeg er ligeglad med sikkerheden, det er også bare et test project indtil videre.
Slater Ekspert
14. marts 2019 - 22:23 #5
Ja, hvis indholdet ser korrekt ud, så har Arne garanteret ret i at det er linjeskift.

Og naturligvis er det fint at eksperimentere - så længe du ved at dette absolut ingen mening giver i nogen virkelig situation.
14. marts 2019 - 22:25 #6
Tak, det var FILE_IGNORE_NEW_LINES som var løsningen. jeg har først lige begyndt med PHP.
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

Opret Preview

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





Premium
Midt i spionage-rygter og mediestorm: Computerworld besøger Huawei i Kina - tag med på besøg hos det måske mest omstridte tech-firma lige nu
Reportage, Shenzhen: “Exacting, rigorous, tests drive learning, all for real battles.” Computerworld er taget på besøg i det gigantiske hovedkvarter for verdens måske mest omtalte tech-selskab lige nu
Computerworld
Google slipper første version af Android 10 løs: Her er de vigtigste nyheder
Tiende version af styresystemet Android er ude i sin første betaversion: Her er de nye funktioner, som systemsoftwaren vil byde på.
CIO
Tech fra Toppen: Det har CIO Mads Madsbjerg Hansen fra FLSmidth lært af flere års global it-konsolidering
Tech fra Toppen: Flere års arbejde har betydet en reduktion i antallet af it-systemer hos FLSmidth. Men processen har ikke været uden overraskelser. Hør hvad CIO Mads Madsbjerg Hansen har lært af den omfattende og globale proces.
Job & Karriere
Efter blodrødt regnskab: Nu fyrer Atea 20 medarbejdere i Danmark
Atea fyrer nu 20 medarbejdere. Det sker som en direkte konsekvens af, at den danske forretning er under pres, oplyser selskabets direktør.
White paper
Lav din egen robot på få minutter med Fable
Tilbage i 2011 startede Shape Robotics udviklingen af Fable, et robotsystem bygget enkelt op på moduler. Det gør at studerende kan bygge deres egen robot på få minutter ved brug af interaktive blokke eller Python API. I denne video fortæller Moises Pacheco, CTO i Shape Robotics om processen med at skabe en intuitiv app sammen med Ciklum, og et partnerskab med Microsoft.