Når de logger ind, kan du gemme deres id i en sessions. Så kan du på de sider, som skal passwordbeskyttes, tjekke om denne session indeholder et id. Hvis ikke, er personen ikke logget ind og skal måske sendes over til loginsiden i stedet.
Er lige stået ind i et problem med min opret side.. Jeg har 2 sider Men jeg får fejl i opret.php og den opretter ikke noget.. Fejlen er : Parse error: syntax error, unexpected T_ELSE in /web/www/frac/users/c/ccms/projekter/opret.php on line 14
Men jeg kan ikke finde ud af hvad det er... jeg har en else i linje 14, men kan ikke finde ud af hvad der lavet fejl..
<?php include 'db_connect.php'; //Connecter til databasen/mysql $opret = &$HTTP_POST_VARS['opret']; if(empty($opret)) { ?> <br><a href="opret.php">Klik her for at oprette bruger</a> <?php } else { $bnavn = &$HTTP_POST_VARS['bnavn']; // Brugernavn fra form i opretformular.html. $pass = &$HTTP_POST_VARS['pass']; // Password fra form i opretformular.html.
if(empty($bnavn) OR empty($pass)) //Her tjekkes om ET af felterne er tomme. echo 'Et af felterne er tomme'; }else{ $result = mysql_query("select bnavn from bruger where bnavn = '$bnavn'") or die (mysql_error()); $number = mysql_num_rows($result); if ($number > 0) { print 'Desværre brugernavnet er optaget'; } else { mysql_query("insert into bruger (bnavn, pass) values ('$bnavn', '$pass')") or die(mysql_error()); print "Brugernavn $brugernavn er oprettet!";
Nu er jeg kommet så langt, at jeg kan oprette men den skriver at jeg ikke har adgang til siderne selvom den faktisk logger mig ind. Koderne ser sådane ud: Tror fejlen er i adminforside.php
check.php <?php SESSION_START(); include 'db_connect.php'; //Conneter til databasen/mysql if(empty($_POST['bnavn']) || empty($_POST['pass'])) { header("location: formular.html"); exit; } else { $query = mysql_query("SELECT * FROM bruger WHERE bnavn='".$_POST['bnavn']."'") or die (mysql_error()); if(mysql_num_rows($query) == '1') { $row = mysql_fetch_array($query); if($row['pass'] == $_POST['pass']) { $_SESSION['bruger']['bnavn'] = $_POST['bnavn']; header("location: adminforside.php"); }else{ header("location: formular.html"); exit; } } else { header("location: formular.html"); exit; } } ?>
adminforside.php
<?php SESSION_START(); if(!empty($_SESSION['bnavn'])) { $query = mysql_query("SELECT * FROM bruger WHERE bnavn='".$_SESSION['bruger']['bnavn']."'") or die (mysql_error()); $row = mysql_fetch_assoc($query); echo " hemmeligt indhold skal vises her!!!!!
Dit bruger id er: ".$row['id']; } else { echo " Du har ikke adgang til disse sider - Det en ommer!"; } ?>
Jeg får denne fejl : Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in /web/www/frac/users/c/ccms/adminforside.php on line 14
adminforside.php:
<?php session_start(); include 'db_connect.php'; //Conneter til databasen/mysql if(isset($_SESSION['bruger']['bnavn'])) { $query = mysql_query("SELECT * FROM bruger WHERE bnavn='".$_SESSION['bruger']['bnavn']."'") or die (mysql_error()); $row = mysql_fetch_assoc($query);
echo"Du er logget ind som admin - Dit brugernavn er: ".$row['bnavn']; echo"</br>"; echo"Du har som : ".$row['rank']; echo"</br>"; echo"Adgang til: </br>"; $tilladelser = mysql_query("SELECT * FROM '.$row[rank].'"); while($row1 = mysql_fetch_assoc($tilladelser)) //Lav en while der kører alle rækker igennem { echo $row1['rettigheder'] . "<br/>"; } } else { echo " Du har ikke adgang til disse sider - Det en ommer!"; } ?>
jeg fandt lige et par } for meget.. men stadig samme fejl
<?php session_start(); include 'db_connect.php'; //Conneter til databasen/mysql if(isset($_SESSION['bruger']['bnavn'])) { $query = mysql_query("SELECT * FROM bruger WHERE bnavn='".$_SESSION['bruger']['bnavn']."'") or die (mysql_error()); $row = mysql_fetch_assoc($query);
echo"Du er logget ind som admin - Dit brugernavn er: ".$row['bnavn']; echo"</br>"; echo"Du har som : ".$row['rank']; echo"</br>"; echo"Adgang til: </br>"; $tilladelser = mysql_query("SELECT * FROM '.$row[rank].'"); while($row1 = mysql_fetch_assoc($tilladelser)) //Lav en while der kører alle rækker igennem
echo $row1['rettigheder'] . "<br/>"; } else { echo " Du har ikke adgang til disse sider - Det en ommer!"; } ?>
Parse error: syntax error, unexpected T_ELSE in /web/www/frac/users/c/ccms/adminforside.php on line 16
Og koden er: <?php session_start(); include 'db_connect.php'; //Conneter til databasen/mysql if(isset($_SESSION['bruger']['bnavn'])) { $query = mysql_query("SELECT * FROM bruger WHERE bnavn='".$_SESSION['bruger']['bnavn']."'") or die (mysql_error()); $row = mysql_fetch_assoc($query);
echo"Du er logget ind som admin - Dit brugernavn er: ".$row['bnavn']; echo"</br>"; echo"Du har som : ".$row['rank']; echo"</br>"; echo"Adgang til: </br>"; $tilladelser = mysql_query("SELECT * FROM '.$row[rank].'") or die(mysql_error()); while($row1 = mysql_fetch_assoc($tilladelser)) { //Lav en while der kører alle rækker igennem echo $row1['rettigheder'] . "<br/>"; } else { echo "Du har ikke adgang til disse sider - Det en ommer!"; } } ?>
Du har fjernet en } for meget. Og så forstår jeg ikke denne query "SELECT * FROM '.$row[rank].'", hvad vil du ?? Men prøv <?php session_start(); include 'db_connect.php'; //Conneter til databasen/mysql if(isset($_SESSION['bruger']['bnavn'])) { $query = mysql_query("SELECT * FROM bruger WHERE bnavn='".$_SESSION['bruger']['bnavn']."'") or die (mysql_error()); $row = mysql_fetch_assoc($query);
echo"Du er logget ind som admin - Dit brugernavn er: ".$row['bnavn']; echo"</br>"; echo"Du har som : ".$row['rank']; echo"</br>"; echo"Adgang til: </br>"; $tilladelser = mysql_query("SELECT * FROM $row[rank]") or die(mysql_error()); while($row1 = mysql_fetch_assoc($tilladelser)) { //Lav en while der kører alle rækker igennem echo $row1['rettigheder'] . "<br/>"; }} else { echo "Du har ikke adgang til disse sider - Det en ommer!"; }
Jeg fandt selv den sidste fejl:). I min database hed kolonen "rettighed" og i php.filen har jeg skrevet "rettighedER".. Smid et svar dkfire:)
Synes godt om
Ny brugerNybegynder
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.