abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    včera 18:11 | Nová verze

    Byl vydán Mozilla Firefox 159.0. Přehled novinek v poznámkách k vydání a poznámkách k vydání pro vývojáře. Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 159 bude brzy k dispozici také na Flathubu a Snapcraftu.

    Ladislav Hagara | Komentářů: 0
    včera 14:11 | IT novinky

    Nasazení softwaru, který nyní používá ve svých autech pro čínský trh, zvažuje automobilový koncern Volkswagen také v Evropě, kde by se mohl používat v budoucích vozech značek Volkswagen, Škoda a Cupra. Základem pro budoucí evropské modely by se mohla stát takzvaná China Electronic Architecture, elektronická architektura vyvinutá pro čínské modely ve spolupráci s tamní automobilkou Xpeng.

    Ladislav Hagara | Komentářů: 11
    včera 13:44 | Komunita

    Vedoucím brněnské pobočky Red Hatu se stal Radek Vokál [LinkedIn].

    Ladislav Hagara | Komentářů: 3
    26.10. 21:29 | Nová verze

    Open source download manager Fatrat povstal z popela. Autor k dvacetiletému výročí projektu přidal do vínku podporu nejnovější knihovny libtorrent, rozhraní portoval na QT6, došlo k nahrazení podpory java rozšíření pythonem. Webové rozhraní bylo přepsáno s podporou mobilních zařízení. Aplikaci je taktéž možno zkompilovat bez podpory GUI. Více informací v releases.

    Max | Komentářů: 28
    26.10. 21:11 | Bezpečnostní upozornění

    Zranitelnost Broccoli2Shell (CVE-2026-111497) v kompresní knihovně Brotli se netýká pouze Node.js. Ohroženy jsou také aplikace využívající HTTP. Knihovnu používají webové prohlížeče, servery i řada dalších aplikací a technologií, například také Python nebo Bun. Identifikace všech zranitelných komponent může být obtížná, protože knihovna bývá součástí dalších softwarových balíčků nebo je přímo začleněna do spustitelných souborů aplikací.

    Ladislav Hagara | Komentářů: 5
    26.10. 18:33 | Komunita

    Quad9, švýcarský celosvětově působící neziskový poskytovatel DNS, od 24. listopadu 2026 ukončí své služby ve Francii kvůli soudnímu sporu s katarskou televizní stanicí beIN. Ta požadovala blokování domén, které podle ní nelegálně zpřístupňují sportovní přenosy. Francouzský soud Katarům vyhověl a nařídil (🇫🇷, PDF) Quad9 blokaci zavést, pod hrozbou pokuty 1000 eur denně. Provozovatel příkaz odmítá s tím, že blokace

    … více »
    Pendrekama do nich❗ | Komentářů: 1
    26.10. 15:22 | Zajímavý článek

    Článek na blogu APNIC vysvětluje, jak správně vytvářet a používat ASPA záznamy — podepsané objekty v RPKI, které uvádějí, kteří poskytovatelé směrování jsou pro dané autonomní číslo (ASN) oprávněni. Síťoví operátoři je mohou využít k ověřování tras BGP a k odhalování úniků tras či podvržených tras.

    vencour | Komentářů: 1
    26.10. 14:33 | Nová verze

    Byla vydána (𝕏) verze 8.0.0 open source programu pro prolamování hesel hashcat (GitHub, Wikipedie). Přehled novinek v příspěvku v diskusním fóru a pdf.

    Ladislav Hagara | Komentářů: 0
    26.10. 14:22 | Nová verze

    Byla vydána (𝕏, Bluesky) nová verze 2026.3 linuxové distribuce navržené pro digitální forenzní analýzu a penetrační testování Kali Linux (Wikipedie). Přehled novinek se seznamem 6 nových nástrojů v oficiálním oznámení na blogu.

    Ladislav Hagara | Komentářů: 1
    26.10. 08:35 | Komunita
    Pořadatelé dalšího ročníku komunitního setkání správců nejen českých a slovenských sítí CSNOG 2027 upozorňují, Call for Abstracts pro blížící se akci (20. a 21. ledna 2027, Zlín) končí už 31. října, tedy na konci tohoto týdne.. … více »
    VSladek | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (9%)
     (7%)
     (4%)
     (20%)
     (30%)
     (9%)
     (5%)
     (2%)
     (14%)
     (20%)
    Celkem 2930 hlasů
     Komentářů: 34, poslední 26.10. 08:24
    Rozcestník

    Dotaz: Propojeni 2 tabulek v PHP

    24.10.2008 20:03 Tomyx007
    Propojeni 2 tabulek v PHP
    Přečteno: 865×
    Prosim o radu, jak jednoduse propojit v PHP dve tabulky "polls" (se sloupci: ID_pollu,ID_Candidate1, ID_Candidate2, ID_Candidate3, ID_Candidate4,Votes1,Votes2,Votes3,Votes4) a tabulku "candidates" (se sloupci:ID, Prijmeni). Kde vzdy kazdemu ID_Candidate (v tabulce "polls") odpovida jedno ID (v tabulce "candidates"). Cilem je vypsat prijmeni kandidatu (z tabulky "candidates") a jim odpovidajici hlasy (Votes z tabulky "polls"). Ted jsem to resil slozitym zpusobem: $vysledek=mysql_query("SELECT * FROM polls where id='$idpoll'"); $zaznam=mysql_fetch_array($vysledek);

    $vysledek2=mysql_query("SELECT * FROM candidates where id='".$zaznam['ID_Candidate1']."'"); $zaznam2=mysql_fetch_array($vysledek2); $data['0']['prijmeni'] = $zaznam2['Prijmeni'];

    $vysledek3=mysql_query("SELECT * FROM candidates where id='".$zaznam['ID_Candidate2']."'"); $zaznam3=mysql_fetch_array($vysledek3); $data['1']['prijmeni'] = $zaznam3['Prijmeni'];

    $vysledek4=mysql_query("SELECT * FROM candidates where id='".$zaznam['ID_Candidate3']."'"); $zaznam4=mysql_fetch_array($vysledek4); $data['2']['prijmeni'] = $zaznam4['Prijmeni'];

    Odpovědi

    24.10.2008 21:24 Petr Svoboda | skóre: 13 | blog: * | Příbram
    Rozbalit Rozbalit vše Re: Propojeni 2 tabulek v PHP
    Nebudu zabíhat do zbytečných detailů. Zkusil bych cosi jako
    SELECT * FROM polls p, candidates c1, candidates c2
    WHERE p.ID = $idpoll AND p.ID_Candidate1 = c1.ID AND p.ID_Candidate2 = c2.ID
    
    S dovolením jsem vynechal 3. a 4. kandidáta, ale jak je přidat je snad zřejmé.

    Nicméně bych se spíš zkusil zamyslet nad změnou schématu (pokud je to možné). Asi bych zvolil něco jako:
    • polls(id)
    • votes(id, id_poll, id_candidate, votes)
    • candidates(id, name)
    Je to výrazně flexibilnější, na druhou stranu budou složitější inserty.

    Select by pak mohl být nějak takto:
    SELECT * FROM votes v, candidates c
    WHERE v.id_poll = $idpoll AND v.id_candidate = c.id
    
    26.10.2008 11:50 Tomyx007
    Rozbalit Rozbalit vše Re: Propojeni 2 tabulek v PHP
    Dekuji za odpoved - fungule to. Slo by jetse nejak resit, pokud ma v tabulce "polls" nektery napr. sloupec ID_Candidate3 hodnotu 0 (stejne tak sloupec Votes3 ma 0), tak dotaz nevypise zadny zaznam, kdyz se zmeni podminka z AND na OR, tak se jich vypise zase mnoho, slo by toto nejka resit?
    default avatar 26.10.2008 14:53 default | skóre: 22 | Madrid
    Rozbalit Rozbalit vše Re: Propojeni 2 tabulek v PHP
    Příloha:
    Předpokládám, že hodnotou nula (0) řešíš nepovinnou vazbu. Od toho je NULL a naštěstí to jde velice jednoduše opravit ;-) Předpokládám testovací data z přílohy. Předtím, než nahodíme referenční integritu, musíme data pročistit.

    Před vlastní modifikací jen povolíme NULL hodnoty:
    ALTER TABLE polls MODIFY id_candidate1 NULL
    /
    
    ALTER TABLE polls MODIFY id_candidate2 NULL
    /
    
    ALTER TABLE polls MODIFY id_candidate3 NULL
    /
    
    ALTER TABLE polls MODIFY id_candidate4 NULL
    /
    Pak nastavíme neplatné klíče na NULL:
    UPDATE polls p
    SET
        p.id_candidate1 = NULL
    WHERE
        NOT EXISTS (SELECT
                1
            FROM
                candidates cc
            WHERE
                cc.id = p.id_candidate1)
    /
    
    UPDATE polls p
    SET
        p.id_candidate2 = NULL
    WHERE
        NOT EXISTS (SELECT
                1
            FROM
                candidates cc
            WHERE
                cc.id = p.id_candidate2)
    /
    
    UPDATE polls p
    SET
        p.id_candidate3 = NULL
    WHERE
        NOT EXISTS (SELECT
                1
            FROM
                candidates cc
            WHERE
                cc.id = p.id_candidate3)
    /
    
    UPDATE polls p
    SET
        p.id_candidate4 = NULL
    WHERE
        NOT EXISTS (SELECT
                1
            FROM
                candidates cc
            WHERE
                cc.id = p.id_candidate4)
    /
    
    COMMIT
    /
    Poté nahoíme referenční integritu:
    ALTER TABLE candidates ADD CONSTRAINT pk_candidates PRIMARY KEY (id)
    /
    
    ALTER TABLE polls ADD CONSTRAINT fk_vote_candidate1 FOREIGN KEY (id_candidate1) REFERENCES candidates (id)
    /
    
    ALTER TABLE polls ADD CONSTRAINT fk_vote_candidate2 FOREIGN KEY (id_candidate2) REFERENCES candidates (id)
    /
    
    ALTER TABLE polls ADD CONSTRAINT fk_vote_candidate3 FOREIGN KEY (id_candidate3) REFERENCES candidates (id)
    /
    
    ALTER TABLE polls ADD CONSTRAINT fk_vote_candidate4 FOREIGN KEY (id_candidate4) REFERENCES candidates (id)
    /
    Každopádně: ve všech případech funguje tento SELECT statement:
    SELECT
        c1.prijmeni AS candidate1_surname,
        p.votes1 AS candidate1_votes,
        c2.prijmeni AS candidate2_surname,
        p.votes2 AS candidate2_votes,
        c3.prijmeni AS candidate3_surname,
        p.votes3 AS candidate3_votes,
        c4.prijmeni AS candidate4_surname,
        p.votes4 AS candidate4_votes
    FROM
        polls p
            LEFT JOIN candidates c1 ON (p.id_candidate1 = c1.id)
            LEFT JOIN candidates c2 ON (p.id_candidate2 = c2.id)
            LEFT JOIN candidates c3 ON (p.id_candidate3 = c3.id)
            LEFT JOIN candidates c4 ON (p.id_candidate4 = c4.id)
    /
    Tak hodně štěstí. (V příloze máš kompletní skript na hraní.)
    26.10.2008 20:34 happy barney | skóre: 34 | blog: dont_worry_be_happy
    Rozbalit Rozbalit vše Re: Propojeni 2 tabulek v PHP
    k joinom ... teda neviem ako mysql, ale nechýba ti tam outer ?
    default avatar 26.10.2008 20:46 default | skóre: 22 | Madrid
    Rozbalit Rozbalit vše Re: Propojeni 2 tabulek v PHP
    LEFT OUTER JOIN a LEFT JOIN jsou ekvivalentní. Klíčové slovo OUTER je nepovinné, protože LEFT nebo RIGHT JOIN je vždy "OUTER".
    default avatar 26.10.2008 14:24 default | skóre: 22 | Madrid
    Rozbalit Rozbalit vše Re: Propojeni 2 tabulek v PHP
    A co takhle?
    SELECT
        c1.prijmeni AS candidate1_surname,
        p.votes1 AS candidate1_votes,
        c2.prijmeni AS candidate2_surname,
        p.votes2 AS candidate2_votes,
        c3.prijmeni AS candidate3_surname,
        p.votes3 AS candidate3_votes,
        c4.prijmeni AS candidate4_surname,
        p.votes4 AS candidate4_votes
    FROM
        polls p
            LEFT JOIN candidates c1 ON (p.id_candidate1 = c1.id)
            LEFT JOIN candidates c2 ON (p.id_candidate2 = c2.id)
            LEFT JOIN candidates c3 ON (p.id_candidate3 = c3.id)
            LEFT JOIN candidates c4 ON (p.id_candidate4 = c4.id)
    /
    

    Založit nové vlákno • Nahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.