DBには2つの別個のテーブルがあり、ここでは関連するフィールドがあります。
テーブル画像:
CREATE TABLE `images` (
`image_id` int(4) NOT NULL AUTO_INCREMENT,
`project_id` int(4) NOT NULL,
`user_id` int(4) NOT NULL,
`image_name` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
`image_description` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
`date_created` date NOT NULL,
`link_to_file` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
`link_to_thumbnail` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
`given_name` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
`note` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`image_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=51 ;
およびテーブルプロジェクト:
CREATE TABLE `projects` (
`project_id` int(4) NOT NULL AUTO_INCREMENT,
`user_id` int(4) NOT NULL,
`project_name` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
`project_description` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
`date_created` date NOT NULL,
`date_last_edited` date NOT NULL,
`shared` int(1) NOT NULL,
`password` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`project_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=25 ;
各プロジェクトの最も古い画像のギャラリーをそのプロジェクトページへのリンクとして変数$contentに表示したいのですが、mysqlクエリをどのように構築する必要があるのかわかりません。これを手伝ってくれませんか。私はいくつかのifおよびwhileステートメントを試しましたが、結果は完全な失敗であり、私は(非常に限られた)知識の終わりにいます。窓から飛び出そうとしています...
だから私は
<a href="index.php?page=projects&id='.$projectid.'">
<img src="oldest_photo_of_project_x" />
</a>
<a href="index.php?page=projects&id='.$projectid.'">
<img src="oldest_photo_of_project_y" />
</a>
<a href="index.php?page=projects&id='.$projectid.'">
<img src="oldest_photo_of_project_z" />
</a>
Update1:
明確にするために、私は組み合わせようとしています:
"SELECT * FROM projects WHERE user_id='$UserID' ORDER BY project_id DESC"
そして多分このようなもの:
$query = "SELECT images.project_id, projects.project_name ".
"FROM images, projects ".
"WHERE images.project_id = projects.project_id";