MYSQL select gresit

Din nou va cer ajutorul dupa cateva ore de dat cu capul de pereti. Deci am pagina de comments, si pagina de replies.
Pe pagina de comment afisez cine a pus comentul si comentul respectiv. Atunci cand dau click pe coment ar trebui sa ma duca pe pagina de replies doar pentru comentul in cauza. Problema este ca nu ma duce. Imi ia id-ul userului cred, pentru ca pe orice coment as da click ma duce pe id-ul userului care a comentat, fapt pentru care daca fac reply la unul din ele, imi apar pe toate puse de userul respectiv.
Dar daca schimb linia de select cu:
$sq = "SELECT * FROM comments"
Merge perfect doar ca este alta problema, nu mai pot afisa userul, bineinteles pentru ca tabela de useri nu mai este selectata. Daca fac un alt select si pentru useri, ii afiseaza pe toti… pentru ca intra in acelasi while.

Baza de date:
users - id, user, pass
comments- id, user_id, comment

Va rog ajutati-ma, simt ca o iau razna :frowning:

<?php
    $id = $show['id'];
    $sq = "SELECT * FROM comments, users WHERE comments.user_id = users.id";   
    $re = mysqli_query($dbCon, $sq);                                         
    while($abc=mysqli_fetch_assoc($re)){
?> 
    <div class="card hoverable q_area">
        <div class="card-content">
            <div class="chip">
                <img src="<?php echo $show['profile_foto'] ?>">                     
        <?php   echo  $abc['user'] . " said:"; ?> 
            </div><br /> 
            <div id="comm">
        <?php   $a=substr(str_replace(' ','-',$abc['question']), 0, 50);  ?>   
                <h5><a href="replys.php?id=<?php echo $abc['id'] ?>&reply=<?php echo $a ?>">
        <?php   echo $abc['comment']; ?></a></h5> <br />
            </div>  
        </div>
    </div>
        <?php   }   ?>

Am rezolvat. Raspunsul corect era:
$sq = "SELECT a.*, b.user FROM comments as a, users as b WHERE a.user_id = b.id"

Lectură suplimentară:

2 Likes

ms frumos. Nu stiu eu prea multe, dar din cate stiu pana acum sunt total de acord cu afirmatia ta :slight_smile: mi se pare unadin cele mai nasoale treburi in mysql… sper sa le inteleg intr-un final.
Problema este ca linkul ala nu merge, ori nu-mi merge mie.

SELECT c.*, u.user
FROM comments c
LEFT JOIN users u ON u.id = c.user_id