PHPBB 3:基礎となるデータベースで追加のユーザーフィールドを見つける

StackOverflow https://stackoverflow.com/questions/4482864

  •  11-10-2019
  •  | 
  •  

質問

私はCentos 5.5およびPostgreSQL 8.4.6でPHPBB 3.0.7-PL1(まもなくアップグレード)を使用し、登録時に新しいユーザーにスパムを防ぐために新しいユーザーに表示される追加の質問があります。

What is your gender please? Answers: Robot/Man/Woman

データベースに対応するエントリが見つかりました。

pref=> select * from phpbb_profile_lang;
 field_id | lang_id | lang_name |        lang_explain         | lang_default_value
----------+---------+-----------+-----------------------------+--------------------
        5 |       2 | Sex       | Please specify your gender  |
(1 row)

pref=> select * from phpbb_profile_fields_lang;
 field_id | lang_id | option_id | field_type | lang_value
----------+---------+-----------+------------+------------
        5 |       2 |         0 |          5 | Robot
        5 |       2 |         1 |          5 | Man
        5 |       2 |         2 |          5 | Woman
(3 rows)

私の問題は次のとおりです:私は今知りたいです、どのユーザーが おとこ そして、どのユーザーがいますか 女性 (ロシア語のフォーラムに統合されたゲームには、プレーヤーを正しく参照できるようにするために必要です)。

しかし、これらの値が保存されている場所では、「phpbb_xxxx」テーブルとフィールドが見つかりません。誰かが知っていますか?

ありがとうございました!アレックス

役に立ちましたか?

解決

わかりました、ユーザーの性別を変更してデータベースダンプを拡張することで見つけました - それはテーブルにあります phpbb_profile_fields_data

そして、私は次のようなindex.phpでその値を取得しました

$sql = 'SELECT pf_sex FROM ' . 
  PROFILE_FIELDS_DATA_TABLE . 
  ' WHERE user_id=' . $user->data['user_id'];
$result = $db->sql_query($sql);
if ($row = $db->sql_fetchrow($result))
        $pf_sex = $row['pf_sex'];
$db->sql_freeresult($result);
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top