私は3つのテーブル(個人、グループ、レコードレーベル)を持っており、それらの間の情報を使用して、レコードレーベル内の人々のリストを作成したいと考えています。例:companyIDが#の個人とグループを検索し、それらをリストする必要があります。結果を複製せずにこれを正しく作成するにはどうすればよいですか?
// Connect to database
include "mysqli_connect.php";
// Set variables
$url_num = $_GET['company_id'];
$company_num = "";
$company_members = "";
$company_members2 = "";
//Check for artist id pagination
if(is_numeric($url_num)){
$company = intval($url_num);
}else{
$company = 1;
}
// Construct our join query
$sqli = "SELECT DISTINCT * FROM recordlabels
INNER JOIN individuals ON individuals.companyID=recordlabels.companyID
INNER JOIN groups ON groups.companyID=recordlabels.companyID
WHERE recordlabels.companyID = '{$company}'";
// Create results
$result = mysqli_query($link, $sqli);
//Check for albums
$totalmembers = mysqli_num_rows($result);
// Checking if query is successful
if($result){
// Print out the contents of each row into a table
while($row = mysqli_fetch_array($result, MYSQLI_BOTH)){
// Assign value of column if not empty, otherwise "DamJuNoImage" (Thanks to Jonathan Sampson from Stack Overflow)
$companyen = empty( $row["companyen"] )
? "Unknown"
: $row["companyen"];
$companyko = empty( $row["companyko"] )
? "Unknown"
: $row["companyko"];
$companyType = empty( $row["companyType"] )
? "Unknown"
: $row["companyType"];
$founded = empty( $row["established"] )
? "Unknown"
: $row["established"];
$founder = empty( $row["companyFounder"] )
? "Unknown"
: $row["companyFounder"];
$information = empty( $row["information"] )
? "Unknown"
: $row["information"];
$location = empty( $row["companyLocation"] )
? "Unknown"
: $row["companyLocation"];
$homepage = empty( $row["companyPage"] )
? "#"
: $row["homepage"];
$solopic = empty( $row["solopic"] )
? "DamjuNoImage"
: $row["solopic"];
$soloen = empty( $row["soloen"] )
? "Unknown"
: $row["soloen"];
$solokn = empty( $row["solokn"] )
? "Unknown"
: $row["solokn"];
$grouppic = empty( $row["grouppic"] )
? "DamjuNoImage"
: $row["grouppic"];
$groupen = empty( $row["groupen"] )
? "Unknown"
: $row["groupen"];
$groupkn = empty( $row["groupkn"] )
? "Unknown"
: $row["groupkn"];
$company_members .= '<li><a href="#">
<div class="image"><img src="pathhere/' . $solopic . '"></div>
<p class="datatitle2">' . $soloen . '</p>
<p class="data-info2">' . $solokn . '</p>
</a></li>';
$company_members2 .= '<li><a href="#">
<div class="image"><img src="pathhere' . $grouppic . '"></div>
<p class="datatitle2">' . $groupen . '</p>
<p class="data-info2">' . $groupkn . '</p>
</a></li>';
$listofmembers = $company_members . $company_members2;
} // End of while statement
}else{
echo "No people under $companyen";
} // End of If statement
(うまくいけば)より良い視覚を与えるため。
- ボブ(個人)
- リサ(個人)
- マニア(グループ)
助けを求める前の私のテストはこの結果をもたらしました:
- ボブ(個人)
- リサ(個人)
- マニア(グループ)
- マニア(グループ)
それは、個人とグループのアウトプットをそれぞれ別の価値に置いたからです。$var1 . $var2
それから私は私がうまくいかないと感じたエコーをしました。
更新:誰もそれを理解できない場合は、データベースとテーブルをやり直します。あなたが助けようとしたすべてに感謝します。