Hvis det ikke skal være sikkert, så håber jeg ikke du har det liggende på nettet!
At det "virker" er sikkert rigtig nok, men hvis du ikke ved hvordan det hænger sammen hvordan kan du så rette i det ?
Jeg går da også ud fra at der må være nogle problemer med det siden du stiller et spørgsmål her.
Nu har jeg så læst den anden tråd.
Som det første må jeg sige at du kun holde dig til EN tråd ad gangen.
Det er spild af min og andres tid hvis du har flere spørgsmål kørerende om det samme emne!
Et ting er sikkert, den person som hjælper dig der er ikke klar over hvordan man arbejder med session's. Funktionen session_register er en død funktion som ikke virker i fremtiden:
http://dk2.php.net/session_registerNår det så er sagt, så gemmer session_register ikke nogen værdi, den laver "kun" en global session variabel. Dvs når du bruger denne funktion får du ikke dit brugernavn eller password med over på andre sider.
At arbejde med session er som at arbejde med et helt normalt array, der er kun det specielle at det overføres mellem sidekald.
Dvs du kan erstatte session_register med:
$_SESSION['myusername'] = $myusername;
$_SESSION['mypassword'] = $mypassword;
Så kan din kode blive et noget ala:
<?php
ob_start();
if(empty($_POST['myusername']) || empty($_POST['mypassword']))
{
header("Location: login_fail.php");
exit();
}
include("config.php");
$myusername=$_POST['myusername'];
$mypassword=$_POST['mypassword'];
$myusername = stripslashes($myusername);
$mypassword = stripslashes($mypassword);
$myusername = mysql_real_escape_string($myusername);
$mypassword = mysql_real_escape_string($mypassword);
$sql="SELECT id FROM main WHERE username='$myusername' and password='$mypassword'";
$result=mysql_query($sql) or die(mysql_error());
$count=mysql_num_rows($result);
if($count>0)
{
$_SESSION['myusername'] = $myusername;
$_SESSION['mypassword'] = $mypassword;
header("location: index.php");
exit();
}
else
{
header("Location: login_fail.php");
exit();
}
ob_end_flush();
?>
Håber det bringer dig videre.