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