私はMySQLを初めて使用します。MySQLリクエストである種のループを実行する必要があるように見えますが、いくつかの「INNER JOIN」のものを使用すると、より効率的になる可能性があると思います。
ここに私のPHPコードがあります:
$query = 'SELECT id FROM membres WHERE pseudo = :pseudo LIMIT 1';
$req = $dtb -> prepare($query);
$req -> execute(array(
'pseudo' => $_COOKIE['pseudo']
));
while($donnes = $req -> fetch()){
$id_pseudo = $donnes['id'];
}
$req -> closeCursor();
$query = 'SELECT id_chanson FROM samples WHERE id_membre = :id_pseudo';
$req = $dtb -> prepare($query);
$req -> execute(array(
'id_pseudo' => $id_pseudo
));
$id_chansons = array();
while($donnes = $req -> fetch()){
$id_chansons[] = $donnes['id_chanson'];
}
$req->closeCursor();
$nSongs= count($id_chansons);
$query = 'SELECT nom, pathName, date FROM chansons WHERE id = :id_chanson';
$req = $dtb -> prepare($query);
for($i=0;$i<$nSongs;$i++){
$req -> execute(array(
'id_chanson' => $id_chansons[$i]
));
while($donnes = $req -> fetch()){
$nomChanson[$i] = $donnes['nom'];
$pathName[$i] = $donnes['pathName'];
$date[$i] = $donnes['date'];
}
}
編集:私のテーブル名は「chansons」(フランス語の歌)「membres」(ユーザー)と「samples」です
:)