srovnání dvou tabulek a zobrazení shody
2 příspěvky
Archiv diskusního fóra
Fórum je uzavřené a slouží pouze ke čtení. Některé informace mohou být zastaralé.
-
<?php require 'C:\htdocs\dbmysql\at_pv.php'; $query = "SELECT * FROM souboryORDER BY id ASC"; $result = mysql_query($query) or die("Není možné vytvořit seznam!"); ?> <table width="800" border="1"> <tr> <td width="8%"><b>Aktivní</b></td> <td width="25%"><b>č.z.</b></td> <td width="35%"><b>Popis</b></td> <td width="15%"><b>Verze/Revize</b></td> <td width="17%"><b>Platnost ke dni</b></td> <td width="15%"><b>Datum vložení</b></td> <td><b>Upravit:</b></td> <td><b>Smazat:</b></td> <td><b>Přečetl:</b></td> </tr> <? while($row = mysql_fetch_array($result)) { ?> <tr> <td><?php echo $row["aktivni"]; ?></td> <td><?php echo $row["id"]; ?></td> <td><?php echo $row["nazev"]; ?></td> <td><?php echo $row["revize"]; ?></td> <td><?php echo $row["platnost"]; ?></td> <td><?php echo $row["datumvl"]; ?></td> <td><a href="index.php?str=mysql/pr_upravit.inc&akce=1&id=<?php echo $row["id"]; ?>">Upravit</a></td> <td><a href="index.php?str=mysql/pr_upravit.inc&akce=4&id=<?php echo $row["id"]; ?>">Smazat</a></td> <td><b> ! přečetl nebo ne !</b></td> </tr> <?php } echo "</table>"; ?> -------------------------- Mám dvě tabulky. Z první tabulky se mi načítají výše uvedená data a do druhé tabulky se mi pomoci neuvedeného skritpu zaznamenává, kdo si dokumenty otevřel. Na základě dvou parametrů, ID - dokumentu (v obou tabulkách stejné) a ID uživatele (ID zapsáno při otevření dokumentu do druhé tabulky a id v SESSION) tak se zobrazí, zda si přečetl nebo ne (! přečetl nebo ne !). Pokud se data rovnají zobrazí se PŘEČETL; pokud data nerovnají, zobrazí se, nečetl. Jde mi tedy o vytvoření této funkce. Jak mám tuto funkci vytvořit?
-
Nebudu tady rozepisovat celou funkci. Jen nakopnu jakým způsobem vytvořit SQL dotaz (vytvrořit na jeho základě vypisovací php část zvládneš).. SELECT * FROM tabulka1 LEFT JOIN tabulka2 ON tabulka1.id=tabulka2.id; Tenhle dotaz "spojí" řádky tabulek v jeden. Pokud v druhé tabulce požadovaný řádek neexistuje, hodnoty budou null. Dej si poroz na případnou potřebu přejmenovat některé sloupce (pokud by měly 2 sloupce stejný název). Více na http://www.junext.net/mysql/ v sekci JOIN.