それぞれの行に画像、動画、音声のリストを含む 3 つのテーブル行があります。
echo '<td width="11%" class="imagetd">'. ( ( empty ($arrImageFile[$key]) ) ? " " : '<ul class="qandaul"><li>'.htmlspecialchars( is_array( $arrImageFile[$key] ) ? implode(",", $arrImageFile[$key]) : $arrImageFile[$key] ) ). '</li></ul></td>' . PHP_EOL;
echo '<td width="11%" class="videotd">'. ( ( empty ($arrVideoFile[$key]) ) ? " " : '<ul class="qandaul"><li>'.htmlspecialchars( is_array( $arrVideoFile[$key] ) ? implode(",", $arrVideoFile[$key]) : $arrVideoFile[$key] ) ). '</li></ul></td>' . PHP_EOL;
echo '<td width="11%" class="audiotd">'. ( ( empty ($arrAudioFile[$key]) ) ? " " : '<ul class="qandaul"><li>'.htmlspecialchars( is_array( $arrAudioFile[$key] ) ? implode(",", $arrAudioFile[$key]) : $arrAudioFile[$key] ) ). '</li></ul></td>' . PHP_EOL;
リストは、データベースからのデータを含む配列です。以下は、ビデオ アレイとデータベースのコードです。音声と画像の設定は似ています
$vidquery = "SELECT s.SessionId, q.QuestionId, v.VideoId, VideoFile
FROM Session s
INNER JOIN Question q ON s.SessionId = q.SessionId
INNER JOIN Video_Question vq ON q.QuestionId = vq.QuestionId
INNER JOIN Video v ON vq.VideoId = v.VideoId
WHERE s.SessionId = ?";
global $mysqli;
$vidqrystmt=$mysqli->prepare($vidquery);
// You only need to call bind_param once
$vidqrystmt->bind_param("i",$_POST["session"]);
// get result and assign variables (prefix with db)
$vidqrystmt->execute();
$vidqrystmt->bind_result($vidSessionId,$vidQuestionId,$vidVideoId,$vidVideoFile);
$arrVideoFile = array();
while ($vidqrystmt->fetch()) {
$arrVideoFile[] = basename($vidVideoFile);
}
$vidqrystmt->close();
現時点では、画像、ビデオ、オーディオのファイル名を箇条書きリストにリストするだけです。しかし、私がやりたいのは、各ファイルをハイパーリンクとして設定して、ユーザーがリンクのいずれかをクリックすると、画像、ビデオ、またはオーディオが別のページに表示されるようにすることです (別のウィンドウが開きます)。 、ビデオまたはオーディオを再生するためのより大きなプレーヤーまたは表示プレーヤーとして。
私の質問は、これをどのように行うことができるかということです。次の手順を実行する必要がありますか?