誰かがこれを手伝ってくれることを願っています。私はPHPをしばらく使用していましたが、Codeigniterを初めて使用しました。Codeigniterの前のクエリの結果に基づいてクエリを実行します。
基本的に私は2つの別々のデータベースに '写真'と 'ユーザー'という2つのテーブルを持っています。 「写真」には、ユーザーが表示したい写真に関する情報が含まれており、「ユーザー」にはその写真を所有しているユーザーの情報が含まれています。ここで
は、コードは次のとおりです。
<?php if (! defined('BASEPATH')) exit('No direct script access allowed');
class Viewphoto_model extends CI_Model {
public function get_photo($id)
{
$db_photos = $this->load->database('photos', TRUE);
$db_photos->select('*');
$db_photos->select("DATE_FORMAT(uploaddate, '%d/%m/%y') as uploaddate_formatted", FALSE);
$db_photos->from('photos');
$db_photos->where('approved', '1');
$db_photos->where('id', $id);
$query = $db_photos->get();
return $query->row();
}
}
だから基本的には、ユーザーがURLにenteres IDに基づいて、データベース上の行をつかみます。
正常に動作します。
「写真」テーブルの各行には、「ユーザー」データベース/テーブルの行のID番号であるユーザーID番号があります。私は '写真'テーブルの行のID番号に基づいて 'users'テーブルから関連行を取得できるようにしたいと思います。
私は答えを見つけようとしていますが、まだ運がありませんでした。 2つのデータベース間で結合を行うか、get_photo関数から2番目のクエリを実行する2番目の関数に値を渡しますか?どのようにそれを行うことができますか?
私はそれを行うと考えていた方法は、最初のクエリの結果からuserid値を取得し、2番目の関数の2番目のクエリに入れますか?それ、どうやったら出来るの?
任意の助けが最も高く評価され:)
感謝を!
を試すかの別々のデータベース上にある、どのように私は2つのデータベースにある2つのテーブルに参加することができますか? –
codeigniterが複数のデータベース接続を許可するかどうかわからない場合は、新しいデータベース設定ルールセットを追加してみてください。 $ config ['connection2'] ['...'] – Philip
ええ、2番目のデータベースの2番目のデータベース値を既に作成しています設定ファイル内にあります。私は、テーブルを結合する方法、あるいは最初のクエリの 'userid'フィールドから値を取得して、2番目の関数で2番目のクエリで使用する方法を理解できません。 –