Jeg har snart prøvet alt, og håber der er en der kan hjælpe med dette, som egentligt burde være ret banalt.
Der er som sagt et script der giver en login box og checker ved login om der er indtastet et gyldigt password, og om der er indtastet noget i det hele taget.
Det skal også være sådan at lige når man kommer til login siden skal der IKKE stå feks "du har ikke indtastet brugernavn", men først når man har klikket på login.
Koden ser pt. sådan her ud :
<? ob_start(); ?>
<?php
session_start();
require("sidehoved.html");
require_once('data_valid_fns.php');
if (isset($HTTP_POST_VARS[userid]) && isset($HTTP_POST_VARS[pass]))
{
// if the user has just tried to log in
$userid = $HTTP_POST_VARS['userid'];
$pass = $HTTP_POST_VARS['pass'];
$db_conn = mysql_connect("localhost", "root") or die(mysql_error());
mysql_select_db('registrering', $db_conn) or die(mysql_error());
$query = "select * from kunde where brugernavn='$userid' and pass='$pass'";
$result = mysql_query($query, $db_conn) or die(mysql_error());
if (mysql_num_rows($result) >0 )
{
// if they are in the database register the user id
$HTTP__SESSION_VARS['valid_user'] = $userid;
}
}
?>
<html>
<body>
<!--<h1>Home page</h1> -->
<?
static $j = 1;
echo $j;
if (isset($HTTP_SESSION_VARS['valid_user']))
{
header("Location:
http://127.0.0.1/ (...));
exit;
// echo 'You are logged in as: '.$HTTP_SESSION_VARS['valid_user'].' <br />';
// echo '<a href="logout.php">Log out</a><br />';
}
if ($userid == "" && $j>=2)
echo 'Du skal skrive et brugernavn!';
if (isset($userid) && $j>=2)
echo 'Du har skrevet forkert brugernavn og password !';
$j == $j++;
echo $j;
// provide form to log in
?>
<center>
<form method="post" action="loginform.php">
<table>
<tr><td>Userid:</td>
<td><input type="text" name="userid"></td></tr>
<tr><td>Password:</td>
<td><input type="PASSWORD" name="pass"></td></tr>
<tr><td colspan="2" align="center">
<input type="submit" value="Log in"></td></tr>
</table></form>
<br>
<br>
<br>
<br>
<br>
<?
require("sidefod.html");
ob_end_flush();
?>
Og den skriver INGEN kommentarer hvis brugeren undlader at udfylde felterne, men han bliver dog ikke logget ind.
Hvad er der galt med mine IF sætninger ?????