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í
×
    dnes 03:44 | Nová verze

    Bitwig Studio (Wikipedie) bylo vydáno ve verzi 6. Jedná se o proprietární multiplatformní (macOS, Windows, Linux) digitální pracovní stanici pro práci s audiem (DAW).

    Ladislav Hagara | Komentářů: 0
    dnes 02:11 | Komunita

    Společnost Igalia představila novou linuxovou distribuci (framework) s názvem Moonforge. Jedná se o distribuci určenou pro vestavěné systémy. Vychází z projektů Yocto a OpenEmbedded.

    Ladislav Hagara | Komentářů: 0
    dnes 00:44 | Nová verze

    Google Chrome 146 byl prohlášen za stabilní. Nejnovější stabilní verze 146.0.7680.71 přináší řadu novinek z hlediska uživatelů i vývojářů. Podrobný přehled v poznámkách k vydání. Opraveno bylo 29 bezpečnostních chyb. Vylepšeny byly také nástroje pro vývojáře.

    Ladislav Hagara | Komentářů: 0
    dnes 00:22 | Nová verze

    D7VK byl vydán ve verzi 1.5. Jedná se o fork DXVK implementující překlad volání Direct3D 3 (novinka), 5, 6 a 7 na Vulkan. DXVK zvládá Direct3D 8, 9, 10 a 11.

    Ladislav Hagara | Komentářů: 0
    včera 23:22 | Nová verze

    Bylo vydáno Eclipse IDE 2026-03 aneb Eclipse 4.39. Představení novinek tohoto integrovaného vývojového prostředí také na YouTube.

    Ladislav Hagara | Komentářů: 2
    včera 10:22 | Upozornění

    Ze systému Slavia pojišťovny uniklo přibližně 150 gigabajtů citlivých dat. Jedná se například o pojistné dokumenty, lékařské záznamy nebo přímou komunikaci s klienty. Za únik může chyba dodavatelské společnosti.

    Ladislav Hagara | Komentářů: 9
    včera 10:11 | IT novinky

    Sněmovna propustila do dalšího kola projednávání vládní návrh zákona o digitální ekonomice, který má přinést bezpečnější on-line prostředí. Reaguje na evropské nařízení DSA o digitálních službách a upravuje třeba pravidla pro on-line tržiště nebo sociální sítě a má i víc chránit děti.

    Ladislav Hagara | Komentářů: 25
    včera 09:33 | IT novinky

    Meta převezme sociální síť pro umělou inteligenci (AI) Moltbook. Tvůrci Moltbooku – Matt Schlicht a Ben Parr – se díky dohodě stanou součástí Meta Superintelligence Labs (MSL). Meta MSL založila s cílem sjednotit své aktivity na poli AI a vyvinout takovou umělou inteligenci, která překoná lidské schopnosti v mnoha oblastech. Fungovat by měla ne jako centralizovaný nástroj, ale jako osobní asistent pro každého uživatele.

    Ladislav Hagara | Komentářů: 0
    včera 00:22 | Nová verze

    Byla vydána betaverze Fedora Linuxu 44 (ChangeSet), tj. poslední zastávka před vydáním finální verze, která je naplánována na úterý 14. dubna.

    Ladislav Hagara | Komentářů: 1
    10.3. 12:11 | IT novinky

    Open source router Turris Omnia NG Wired je v prodeji. Jedná se o Turris Omnia NG bez Wi-Fi. Je připraven pro zamontování do racku.

    Ladislav Hagara | Komentářů: 6
    Které desktopové prostředí na Linuxu používáte?
     (16%)
     (6%)
     (0%)
     (11%)
     (29%)
     (2%)
     (5%)
     (2%)
     (13%)
     (25%)
    Celkem 1054 hlasů
     Komentářů: 26, poslední dnes 08:56
    Rozcestník

    Dotaz: MySQL query z PHP

    8.8.2010 22:00 cross
    MySQL query z PHP
    Přečteno: 1709×
    Ahojte, v PHP skripte mam toto:
    mysql_query("SELECT * FROM abcd WHERE hkg='$cat' AND time<='".time() ."' ORDER BY date DESC LIMIT $a,$b");
    Ked tuto poziadavku v skripte prevediem:
    Unknown column 'bla' in 'where clause'
    Kde bla je vlastne $cat v skripte. Ak si necham celu poziadavku vypisat cez echo a nasledne skopirujem do mysql natvrdo, tak prikaz funguje. Neviete kde mam chybu?

    Dik.

    Odpovědi

    8.8.2010 22:27 chrono
    Rozbalit Rozbalit vše Re: MySQL query z PHP
    Je zvláštne, že ti píše túto chybu aj keď máš okolo tej premennej $cat apostrofy.
    8.8.2010 23:50 fraxinus | skóre: 20 | blog: fraxinus
    Rozbalit Rozbalit vše Re: MySQL query z PHP
    $s = "SELECT * FROM abcd WHERE hkg='$cat' AND time<='".time() ."' ORDER BY date DESC LIMIT $a,$b";
    echo "Idem pustit: ".htmlspecialchars($s);
    mysql_query($s);
    
    Co to vypise?
    9.8.2010 09:12 cross
    Rozbalit Rozbalit vše Re: MySQL query z PHP
    Idem pustit: SELECT * FROM abc WHERE hkg='bla' AND time<='1281338071' ORDER BY date DESC LIMIT 0,5 
    Unknown column 'bla' in 'where clause'
    9.8.2010 11:28 volvox | skóre: 16
    Rozbalit Rozbalit vše Re: MySQL query z PHP
    Evidentně je problém v těch apostrofech, proto chtěl chtěl předřečník abyste výpis zkopíroval, ne přepsal ručně(viz chybějící 'd' v názvu tabulky).

    A jak už bylo zmíněno, tento způsob zápisu SQL dotazů je náchylný SQL Injection. Použijte raději rozšíření PDO a zabijete tak dvě mouchy jednou ranou. Viz třeba příklad u PDOStatement->execute
    okbob avatar 9.8.2010 05:16 okbob | skóre: 30 | blog: systemakuv_blog | Benešov
    Rozbalit Rozbalit vše Re: MySQL query z PHP
    Předpokládám, že se teprve PHP učíte - tak si ještě přečtěte něco o SQL injection. Máte tam parádní díru. Možná, když si to opravíte, tak to začne fungovat.
    9.8.2010 09:13 cross
    Rozbalit Rozbalit vše Re: MySQL query z PHP
    Mozem vediet, kde ta chyba je?
    okbob avatar 9.8.2010 10:58 okbob | skóre: 30 | blog: systemakuv_blog | Benešov
    Rozbalit Rozbalit vše Re: MySQL query z PHP
    WHERE sloupec='$cat' ..

    Tam byste měl explicitně použít funkci mysql_real_escape_string - viz např. http://php.net/manual/en/function.mysql-real-escape-string.php a dost možná máte problém s magic quotes.
    Jendа avatar 9.8.2010 15:09 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: MySQL query z PHP
    Nemusí tam být nutně injection, třeba si obsah proměnné cat generuje nějakým switchem uvnitř programu. Ale ano, už se mi to jednou taky „povedlo“ - nejdřív jsem to generoval switchem, ale pak jsem doimplementoval funkci, která to umožnila explicitně zadat a na ošetření už jsem zapomněl. Takže ano, je lepší ošetřovat vždy.
    okbob avatar 10.8.2010 07:03 okbob | skóre: 30 | blog: systemakuv_blog | Benešov
    Rozbalit Rozbalit vše Re: MySQL query z PHP
    No právě :)

    Stačí jedna pozapomenutá substituce a vzhledem ke komplexnosti programu máte problém. Takže je dobré se tento zápis úplně odnaučit (případně pokud možno neučit).
    9.8.2010 10:07 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: MySQL query z PHP
    Tuto chybu můžete vidět, pokud místo:
    "SELECT * FROM `abcd` WHERE `hkg`='$cat' AND `time`<='" . time() ."' ORDER BY date DESC LIMIT $a,$b"
    máte:
    "SELECT * FROM `abcd` WHERE `hkg`=`$cat` AND `time`<='" . time() ."' ORDER BY date DESC LIMIT $a,$b"
    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    9.8.2010 10:31 cross
    Rozbalit Rozbalit vše Re: MySQL query z PHP
    Bohuzial, ani tato rada mi nepomaha. Fakt neviem, kde moze byt chyba :( Dakujem
    9.8.2010 11:11 chrono
    Rozbalit Rozbalit vše Re: MySQL query z PHP
    Vlož sem ako prílohu ten riadok s query a ten, v ktorom nastavuješ tú premennú, ako textový súbor (lebo podľa toho, čo píšeš to vyzerá normálne).
    9.8.2010 12:55 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: MySQL query z PHP
    Dejte sem kus toho kódu, ale opravdu zkopírovaný a ne přepsaný - klidně jako přílohu.
    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    10.8.2010 10:52 cross
    Rozbalit Rozbalit vše Re: MySQL query z PHP
    Ospravedlnujem sa. Islo o inu query, ktora bola niekolko riadkov pod tou, co som si mysel, ze robi problemy.

    Ohladom sql injekcie, dane vstupy osetrujem, ked som daval kod sem, tak som to povazoval za nepotrebne.

    Dakujem :)

    Založit nové vláknoNahoru

    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.