hallo zusammen,
ich habe ein login nach eine tutorial erstellt.
hier folgende codeausschnitte:
sessionhelpers
connect.php
index.php
ich habe folgendes problem:
local gibt er mir den richtigen usernamen aus.
lade ich das ganze auf 1und1 - bekomme ich als username den namen der 1und1 datenbank angezeigt, egal mit welchem user ich mich anmelde.
hat jemand eine idee an was das leigt, bzw. wie ich dieses problem umgehen kann?
P.S: ich möchte in einer Variablen den usernamen über alle seiten in einer session übergeben $_SESSION["USERNAME"]...
viele grüße
ronny
ich habe ein login nach eine tutorial erstellt.
hier folgende codeausschnitte:
sessionhelpers
PHP-Code:
<?PHP function connect()
{
$con= mysql_connect('localhost','root','') or die(mysql_error());
mysql_select_db('webtest',$con) or die(mysql_error());
}
function check_user($name, $pass)
{
$sql="SELECT UserId
FROM users
WHERE UserName='".$name."' AND UserPass=MD5('".$pass."')
LIMIT 1";
$result= mysql_query($sql) or die(mysql_error());
if ( mysql_num_rows($result)==1)
{
$user=mysql_fetch_assoc($result);
return $user['UserId'];
}
else
return false;
}
function login($userid)
{
$sql="UPDATE users
SET UserSession='".session_id()."'
WHERE UserId=".$userid;
mysql_query($sql);
}
function logged_in()
{
$sql="SELECT UserId
FROM users
WHERE UserSession='".session_id()."'
LIMIT 1";
$result= mysql_query($sql);
return ( mysql_num_rows($result)==1);
}
function logout()
{
$sql="UPDATE users
SET UserSession=NULL
WHERE UserSession='".session_id()."'";
mysql_query($sql);
}
connect();?>
PHP-Code:
<? //Skript zur Erstellung der MySQL Verbindung
session_start();
include ("session.php");
$username = "root";
$password = "";
$database = "webtest";
$hostname = "localhost";
$conn = mysql_connect("$hostname", "$username", "$password")
or die("Invalid server or user.");
mysql_select_db("$database", $conn);
?>
PHP-Code:
<?
session_start();
include 'sessionhelpers.inc.php';
$_SESSION["username"]=$_POST[username];
if (isset($_POST['login']))
{
$userid=check_user($_POST['username'], $_POST['userpass']);
if ($userid!=false)
login($userid);
else
echo '<font color="#ff000" font face="Tahoma" font size="2">Ihre Anmeldedaten waren nicht korrekt!';
}
if (!logged_in())
echo '<td><form method="post" action="index.php"><tr></tr>
<td><font color="#235AA6" font face="Tahoma" font size="2">Benutzername:<td> <input name="username" type="text"><br><tr></tr>
<td><font color="#235AA6" font face="Tahoma" font size="2">Passwort:<td><input name="userpass" type="password" id="userpass"><br><tr></tr>
<td><td><input name="login" type="submit" id="login" value="Einloggen">
</form>';
else
header ("Location: nummerauswahl.php");
?>
local gibt er mir den richtigen usernamen aus.
lade ich das ganze auf 1und1 - bekomme ich als username den namen der 1und1 datenbank angezeigt, egal mit welchem user ich mich anmelde.
hat jemand eine idee an was das leigt, bzw. wie ich dieses problem umgehen kann?
P.S: ich möchte in einer Variablen den usernamen über alle seiten in einer session übergeben $_SESSION["USERNAME"]...
viele grüße
ronny
Kommentar