0

ログイン スクリプトと、ID をユーザー認証 (検証) として使用する UCP があります。基本的には、ID を使用して適切なアカウントにログインします。だから私が必要なのは、彼のIDではなく人の名前を使用することです.

さて、これが私の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 より大きいかどうか、つまりログインしていることを確認します。0 の場合、ログアウトしています。そして、それはどこにでもあります。

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

Web ページには、彼がログアウトしたコンテンツが表示されます。IDではなくユーザー名でユーザーにログインするシステムが必要です。スクリプト全体を書き直さずにそれを行う方法はありますか?

この質問が正しかったことを願っていますが、何か問題があるかどうか尋ねてください。

さて、私のlogin.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);
}

そして、これは基本的に、Webページにユーザーデータを表示する方法です:

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

1 に答える 1