Mysql会话选择ID我需要用户名


Mysql sessions selecting ID i need Username

我有一个登录脚本和一个使用ID作为用户身份验证(验证)的UCP。。。基本上,它使用身份证来将此人登录到正确的帐户中。所以我需要的是使用人名而不是他的身份证。

以下是我的Mysql:

桌面(服务器播放器)

User - Users name that he registered In Game(This UCP and system is for a game)
ID - given by the server when registering(everyones are different)

UCP到处都是这样写的:login.php=

if ($_SESSION['user'] > 0)

但这就是问题所在。它基本上检查用户的ID是否大于零,这意味着他登录了。如果是0,他就注销了。到处都是。

if ($_SESSION['user'] == 0)

网页显示他已注销的内容。我需要系统通过用户的用户名而不是ID登录用户。有没有办法在不重写整个脚本的情况下做到这一点?

我希望我答对了这个问题,但如果有什么问题,请问一下。

好了,这是我的登录名.php

<?php
if ($_SESSION['narys'] != '') header('Location: index.html');
if (isset($_POST['User']))
{
$result = mysql_query('SELECT User, Password FROM serverplayers WHERE User='''. $_POST['User'] .''' LIMIT 1');
$row = mysql_fetch_array($result);
if ($row['Password'] == $_POST['Slaptazodis']) {
$_SESSION['narys'] = $row['User'];
header('Location: index.html');
}
else echo '<center>
<b>Prisijungimas</b><br>
<br>
<br>Neteisingas slapyvardis arba slaptažodis<br>
<br>

<form method="post" action="login.html">
<input type="text" name="User" id="username" placeholder="Vartotojo vardas"><br>
<input type="password" name="Slaptazodis" id="slaptazodis" placeholder="Slaptažodis">
<<input type="submit" name="login" value="" id="jungtisvvp" >
</form>
<br>
... dar neturite sąskaitos? - <a href="register.html">Užsiregistruokite!</a></center>';
    if ($_SESSION['narys'] != '') exit; 
}
else
{
echo '
<form method="post" action="login.html">
<input type="text" name="User" id="username" placeholder="Vartotojo vardas"><br>
<input type="password" id="slaptazodis" placeholder="Slaptažodis">
<input type="submit" value="" id="jungtisvvp">
</form>
';
}
?>

下面是我的header.php,它选择用户数据:

if ($_SESSION['narys'] != ''){
$result = mysql_query('SELECT vModel, vOwner, Vip, VipDaysLeft, MoneyInBank, HaveBankAccount, Warns, TelphoneNumber, TelPhoneContract, Online, Job, HaveCredits, User, AdminLevel, AdminDaysLeft, PlayerX, PlayerY, PlayerZ, Experience, Money, Gender, Skin, Online, Health, Armour, Password, HaveCredits FROM serverplayers WHERE User='.$_SESSION['narys']);
$ro = mysql_fetch_array($result);
}

这基本上就是我在网页中显示用户数据的方式:

<li>Life: <div class="red-box">' .$ro['Health']. '</div></li>

如果将会话变量更改为包含名称而不是ID,请使用:

if ($_SESSION['username'] == '') {
    // Not logged in
}
if ($_SESSION['username'] != '') {
    // Logged in
}