我有統計存儲在數據庫中。我希望我們的MediaWiki中的用戶僅查看與其用戶名相關聯的統計信息。 我在下面試過,但它給了我一個空白頁面(沒有錯誤)。 我的猜測是它沒有從會話中獲取用戶名。 我應該如何設法做到這一點?獲取MediaWiki會話()用戶名
<?php
$dbtype = "mysql";
$dbhost = "localhost";
$dbname = "test";
$dbuser = "username";
$dbpassword = "passw0rd";
$conn = mysql_connect($dbhost, $dbuser, $dbpassword);
if(! $conn)
{
die('Could not connect: ' . mysql_error());
}
$wgHooks['UserLoginComplete'][] = 'test::onUserLoginComplete';
class test
{
public static function UserLoginComplete($user, $password, &$retval, &$msg) {
$dbr = wfGetDB(DB_SLAVE);
$row = $dbr->selectRow(
'coaching', // $Table
'Name', // $vars (column of the table)
array('Name' => $user), // $Conitions
__METHOD__ // $fname = 'Database::select'
);
mysql_select_db($dbname, $conn);
echo '<table border="0" border-color="#CCCCCC" bgcolor="#FFFFFF"><thead><tr><td><b>ID</b></td><td><b>Namn</b></td><td><b>Datum</b></td><td><b>Score</b></td></tr></thead><tbody>';
$query = "SELECT ID, Name, Date, Score FROM coaching WHERE Name = $user";
$result = mysql_query($query) or die(mysql_error());
$color="1";
while($row = mysql_fetch_array($result)){
if($color==1){
echo '<tr bgcolor="#D0D0D0">';
$color="2";
} else {
echo '<tr bgcolor="#E0E0E0">';
$color="1";
}
echo '<td>'.$row['ID'].'</td><td>'.$row['Name'].'</td><td>'.$row['Date'].'</td><td>'.$row['Score'].'</td></tr>';
}
?>
你不應該猜測,你應該知道你的代碼中發生了什麼。 – svick 2013-04-26 09:01:15
不幸的是,我們並不是所有人都是那種技術嫺熟的人,但是謝謝你的助手。 – 2013-04-26 09:33:21
我的意思是,如果你不知道,你應該找出答案。無論是通過使用調試器,還是通過將實際值寫入某個可以讀取它的地方(如果這對您不可用)。 – svick 2013-04-26 09:35:37