2

したがって、私のテーマのレイアウトの一部は、ワードプレス用に作成されたデータベース以外のデータベースにクエリを実行する必要があります。通常どおり他のデータベースにクエリを実行すると考えました。私はそれを処理するための簡単な関数を書きました:

function my_function() {
  $con = mysql_connect("localhost", "user", "password");
  mysql_select_db("database", $con);
  $result = mysql_query("my query");
  mysql_close($con);
  $all = array();

  while ($all[] = mysql_fetch_assoc($result)) {}
  return $all;
}

ヘッダーで関数を参照していますが、サイドバーのカテゴリが壊れていることに気付きました。どうしたの?と思って接続を閉じました。私は何を間違っていますか?カテゴリに対して表示されるエラーは次のとおりです。

警告: mysql_error(): 14 は有効な MySQL-Link リソースではありません /blog/wp-includes/wp-db.php の 1098 行目

4

1 に答える 1

12

カスタム データベースは wordpress データベースと同じ mysql にありますか? その後、引き続き $wpdb オブジェクトを使用できます。

global $wpdb;
$wpdb->get_results( "SELECT * FROM brian_db.brian_table" );

それができない場合でも、一貫性を保つために Wordpress Database クラスを使用することをお勧めします。その関数で新しい接続を設定できます。

$wpdb_b = new wpdb( "user", "password", "brian_db", "localhost" );
$wpdb_b->get_results( "SELECT * FROM brian_table" );

更新:「グローバル」を修正

于 2012-06-08T23:23:28.140 に答える