1

次の方法でデータベースからデータを取得する際に問題が発生しました$wpdb

function nadji_sve_statuse() {
  global $wpdb, $leaguemanager;
  $league = $leaguemanager->getCurrentLeague();

  $svi_statusi = $wpdb->get_var( "SELECT * FROM {$wpdb->leaguemanager_person_status} WHERE 1" );
  
  return $svi_statusi;
 }

{$wpdb->leaguemanager_person_status}完全な実際のテーブル名に置き換えるとwp_leaguemanager_person_status、正常に機能しますが、ユーザーがデータベーステーブルのプレフィックスの名前を別の名前に変更しようとすると、新しい問題が発生します。私は何が間違っているのですか?

4

1 に答える 1

6

テーブルのプレフィックスを取得する必要があります。これを試してください。

function nadji_sve_statuse() {
  global $wpdb, $leaguemanager;
  $league = $leaguemanager->getCurrentLeague();
  $tableName = $wpdb->prefix . 'leaguemanager_person_status';

  $svi_statusi = $wpdb->get_var( "SELECT * FROM {$tableName} WHERE 1" );

  return $svi_statusi;
 }
于 2012-09-24T14:25:00.803 に答える