Mysql - Több találat esetén is csak 1-et ad vissza a lekérdezés
Hello!
Az alábbi kóddal az a baj, hogy ha a doc táblában több olyan sor is van, ahol a tananyag_id megegyezik a $_GET-ben lévő id-vel, akkor is csak egy adatot rak ki, pedig van olyan, aminél 2 is van.
És most ahol több találat is van, azt úgy rakja ki, hogy azt a tananyagot 2x, csak ugye a másik doc adattal. Mi lenne erre a megoldás?
■ Az alábbi kóddal az a baj, hogy ha a doc táblában több olyan sor is van, ahol a tananyag_id megegyezik a $_GET-ben lévő id-vel, akkor is csak egy adatot rak ki, pedig van olyan, aminél 2 is van.
És most ahol több találat is van, azt úgy rakja ki, hogy azt a tananyagot 2x, csak ugye a másik doc adattal. Mi lenne erre a megoldás?
$sql = "SELECT tananyag.*, doc.*, admin_user.id, admin_user.nev FROM tananyag
INNER JOIN doc ON tananyag.tan_id = doc.tananyag_id
LEFT OUTER JOIN admin_user ON tananyag.tan_uploader = admin_user.id
WHERE tananyag.tananyag_csoport = ".$_SESSION['logged']['nevsor_csoport']."
ORDER BY tananyag.tan_upload_date DESC";
echo $sql;
$get_tananyag = mysqli_query($kapcs, $sql);
if(mysqli_num_rows($get_tananyag) > 0 )
{
while($t = mysqli_fetch_assoc($get_tananyag))
{
?>
<div class="row tananyag_row">
<h4 class="tananyag_title"><?php echo $t['tan_nev']; ?></h4>
<p><?php echo $t['tan_leiras']; ?></p>
<span class="tananyag_uploaded_info"><i class="glyphicon glyphicon-user"></i> Feltöltötte: <?php echo $t['nev']; ?></span>
<span class="tananyag_uploaded_info"><i class="glyphicon glyphicon-calendar"></i>
Feltöltés dátuma: <?php echo substr($t['tan_upload_date'], 0, -3); ?></span>
<span class="tananyag_uploaded_info"><i class="glyphicon glyphicon-file"></i> Fájl, dokumentum:
<a href="docs/<?php echo $t['doc_file']; ?>" class="file_link"><?php echo $t['doc_file']; ?></a></span>
</div>
<?php
}
}
else
{
echo '<p>Tananyagok feltöltése folyamatban...</p>';
}
?>
Biztos?
A php.net-en a doksiban miért
A mysqli_result alatt kell
fetch-assoc
Igen, így megvolt, csak
Feladat?
Tegyük fel, látni akarod mely tananyaghoz van feltöltött dokumentum. Akkor 1 tan.rekord => 1 doc.rekord az értelmes eredmény. A lekérdezés így néz ki, például:
akkor meg miért gond az 1 tan.rekord => több doc.rekord?
Az van most, hogyha pl az A
Nem a fájlokat rakja ki, amennyi van, hanem többször azt a tananyagot, mindig más fájlal, ugye ahány fel van töltve.
A lekérdezésed pontosan azt
Mind1 hagyjuk. Végülis nem