さて、私は次のコードを持っています:
if ($AccountData ['nAuthID'] == 1 && $data['MAINT'] == True) {
die ('MM');
}
技術的には機能するはずですが、何らかの理由で機能しません。
基本的に私のテキスト ファイルでは、maint は false であると述べていますが、コードのこの部分に到達すると、まだ死んでいます。
「$data['MAINT'] == True」の部分と関係があると思いますが、何が問題なのかわかりませんか?
すべてのコードは次のとおりです。
$exec = mssql_query("SELECT nEMID, nAuthID, sUserPass FROM tAccounts where sUsername = '$user'");
$AccountData = mssql_fetch_assoc($exec);
$file = file('LauncherInfo.txt');
foreach ($file as $line) {
if ($line) {
$splitLine = explode(' = ',$line);
$data[$splitLine[0]] = $splitLine[1];
}
}
//echo $data['MAINT'];
if ($AccountData ['nAuthID'] == 2 && $data['MAINT'] == True) {
//Continue.
} else if ($AccountData ['nAuthID'] == -2) {
die ('INV');
} else if ($AccountData ['nAuthID'] == -1) {
die ('BAN');
} else if ($AccountData ['nAuthID'] == 1 && $data['MAINT'] == True) {
die ('MM');
} else if ($AccountData ['nAuthID'] == 0) {
die ('EVR');
}
これは、テキスト ファイル 'LauncherInfo.txt' の内容です。
IP = 127.0.0.1
EXE = Client.exe
PORT = 8080
TITLE = Title
MAINT = False
Maintenance-Message = The server is currently in maintenance.
Ban-Message = You have been banned sucker!
Email Verification-Message = You need to active your email adddress.
Investigation-Message = Your account is undergoing investigation.
編集:
次のコードを使用してみました:
if ($AccountData ['nAuthID'] == -2) {
die ('INV');
} else if ($AccountData ['nAuthID'] == -1) {
die ('BAN');
} else if ($AccountData ['nAuthID'] == 0) {
die ('EVR');
} else if ($AccountData ['nAuthID'] == 1 && $data['MAINT'] == 'True') {
die ('MM');
} else if ($AccountData ['nAuthID'] == 2 && $data['MAINT'] == 'True') {
//Continue and allow user to log in.
}
私もこれを試しました:
if ($AccountData ['nAuthID'] == -2) {
die ('INV');
} else if ($AccountData ['nAuthID'] == -1) {
die ('BAN');
} else if ($AccountData ['nAuthID'] == 0) {
die ('EVR');
} else if ($AccountData ['nAuthID'] == 1 && $data['MAINT'] == "True") {
die ('MM');
} else if ($AccountData ['nAuthID'] == 2 && $data['MAINT'] == "True") {
//Continue and allow user to log in.
}
しかし、どちらも機能しませんか?
EDIT2: コードを次のように変更しました。
if ($AccountData ['nAuthID'] == -2) {
echo ('INV');
} else if ($AccountData ['nAuthID'] == -1) {
echo ('BAN');
} else if ($AccountData ['nAuthID'] == 0) {
echo ('EVR');
} else if ($AccountData ['nAuthID'] == 1 && $data['MAINT'] == "True") {
echo ('MM');
} else if ($AccountData ['nAuthID'] == 2 && $data['MAINT'] == "True") {
//Continue and allow user to log in.
}
そして、ウェブブラウザに表示されるのは EVR です。そこから先も進まないような?
ありがとう。