Login opbygning på site
Jeg har lavet et login i php, men hvordan opbygger jeg mit login sådan at jeg kan have mit login stående ude i siden, og når man så logger ind loader den (den beskyttede side) i en IFRAME.Siden er f.eks opbygget således:
<HTML>
<HEAD>
<TITLE>Hovedsiden med login i siden</TITLE>
</HEAD>
<BODY>
<TABLE>
<TR><TD COLSPAN="3" WIDTH="600">OVERSKRIFT BANNER</TD></TR>
<TR><TD COLSPAN="2" HEIGHT="300" WIDTH="80%">Her skal den hemmlige side loades!<IFRAME></IFRAME></TD><TD WIDTH="200">LOGIN SKAL VÆRRE HER!</TD></TR>
<TR><TD COLSPAN="3">BUND</TD></TR>
</TABLE>
</BODY>
</HTML>
HER ER MIT SCRIPT (LOGIN), som skal tilpasses til hovedsiden eks.:
<HTML>
<HEAD>
</HEAD>
<BODY>
<?php
////////////////////////////////////////////////////////////////////////////////
// FUNKTIONS ERKLÆRINGER
////////////////////////////////////////////////////////////////////////////////
// FUNKTION TIL AT ÅBNER EN FORBINDELSE TIL DATABASEN!
function aabn_forbindelse_og_vaelgdb()
{
$server = "localhost";
$bruger = "bruger";
$kodeord = "xxxxx";
$database = "rooster";
$table = "login";
if (!mysql_connect("$server","$bruger","$kodeord")) {
udskriv_fejl("Kunne ikke oprette en forbindelse til MySQL.");
}
if(!mysql_select_db("$database")) {
udskriv_fejl("Kunne ikke vælge databasen: $database");
}
}
// FUNKTION TIL AT LUKKER FORBINDELSEN TIL DATABASEN IGEN!
function luk_forbindelse()
{
if(!mysql_close()) {
echo "Kunne ikke lukke forbindelsen til MySQL!";
}
}
//
function getDataFromSqlQuery($SQL)
{
$resultFromQuery = mysql_query($SQL);
while($row = mysql_fetch_array($resultFromQuery)) {
$resultArray[] = $row;
}
if (!isset($resultArray)) {
$resultArray = FALSE;
}
return $resultArray;
}
// FUNKTION TIL AT UDSKRIVE FEJL MED
function udskriv_fejl($STR)
{
print("<b>$STR</b>");
}
////////////////////////////////////////////////////////////////////////////////
// HER STARTER SCRIPTET
////////////////////////////////////////////////////////////////////////////////
// ÅBNER EN FORBINDELSE TIL DATABASEN
aabn_forbindelse_og_vaelgdb();
if(isset($_GET['action']) && $_GET['action'] == "login") {
if($_POST['login_navn'] == "") {
print "Du har ikke indtastet et brugernavn!";
} elseif($_POST['login_kode'] == "") {
print "Du har ikke indtastet en password!";
} else {
#SQL STRENG
$tjek = "
SELECT navn, kode
FROM login
WHERE navn = '".$_POST['login_navn']."'
AND kode = '".$_POST['login_kode']."'";
$return_from_query = getDataFromSqlQuery($tjek);
if($return_from_query[0]['navn'] == $_POST['login_navn'] && $return_from_query[0]['kode'] == $_POST['login_kode']){
?>
<?php include("c:/inetpub/wwwroot/zerocontrol/rooster.php"); ?>
<?
} else {
echo "Der er fejl i enten brugernavn eller password!";
}
}
}
?>
<FORM ACTION="<?=basename($_SERVER['PHP_SELF']);?>?action=login" METHOD="POST">
<INPUT NAME="login_navn" TYPE="text"><BR />
<INPUT NAME="login_kode" TYPE="text"><BR />
<INPUT TYPE="submit" VALUE="Login"><BR>
</FORM>
<?
// LUKKER FORBINDELSEN TIL DATABASEN
luk_forbindelse();
?>
</BODY>
</HTML>
