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 14:44 | Nová verze

    Byla vydána verze 4.0.0 programovacího jazyka Ruby (Wikipedie). S Ruby Box a ZJIT. Ruby lze vyzkoušet na webové stránce TryRuby. U příležitosti 30. narozenin, první veřejná verze Ruby 0.95 byla oznámena 21. prosince 1995, proběhl redesign webových stránek.

    Ladislav Hagara | Komentářů: 0
    včera 02:11 | Komunita

    Všem čtenářkám a čtenářům AbcLinuxu krásné Vánoce.

    Ladislav Hagara | Komentářů: 18
    včera 02:00 | Nová verze

    Byla vydána nová verze 7.0 linuxové distribuce Parrot OS (Wikipedie). S kódovým názvem Echo. Jedná se o linuxovou distribuci založenou na Debianu a zaměřenou na penetrační testování, digitální forenzní analýzu, reverzní inženýrství, hacking, anonymitu nebo kryptografii. Přehled novinek v příspěvku na blogu.

    Ladislav Hagara | Komentářů: 0
    23.12. 18:33 | Nová verze

    Vývojáři postmarketOS vydali verzi 25.12 tohoto před osmi lety představeného operačního systému pro chytré telefony vycházejícího z optimalizovaného a nakonfigurovaného Alpine Linuxu s vlastními balíčky. Přehled novinek v příspěvku na blogu. Na výběr jsou 4 uživatelská rozhraní: GNOME Shell on Mobile, KDE Plasma Mobile, Phosh a Sxmo.

    Ladislav Hagara | Komentářů: 0
    23.12. 13:55 | Nová verze

    Byla vydána nová verze 0.41.0 multimediálního přehrávače mpv (Wikipedie) vycházejícího z přehrávačů MPlayer a mplayer2. Přehled novinek, změn a oprav na GitHubu. Požadován je FFmpeg 6.1 nebo novější a také libplacebo 6.338.2 nebo novější.

    Ladislav Hagara | Komentářů: 0
    23.12. 12:44 | Nová verze

    Byla vydána nová verze 5.5 (novinky) skriptovacího jazyka Lua (Wikipedie). Po pěti a půl letech od vydání verze 5.4.

    Ladislav Hagara | Komentářů: 0
    22.12. 23:44 | Nová verze

    Byla vydána nová verze 5.4.0 programu na úpravu digitálních fotografií darktable (Wikipedie). Z novinek lze vypíchnout vylepšenou podporu Waylandu. Nejnovější darktable by měl na Waylandu fungovat stejně dobře jako na X11.

    Ladislav Hagara | Komentářů: 0
    21.12. 05:00 | Nová verze

    Byla vydána beta verze Linux Mintu 22.3 s kódovým jménem Zena. Podrobnosti v přehledu novinek a poznámkách k vydání. Vypíchnout lze, že nástroj Systémová hlášení (System Reports) získal mnoho nových funkcí a byl přejmenován na Informace o systému (System Information). Linux Mint 22.3 bude podporován do roku 2029.

    Ladislav Hagara | Komentářů: 2
    21.12. 01:55 | Nová verze

    GNU Project Debugger aneb GDB byl vydán ve verzi 17.1. Podrobný přehled novinek v souboru NEWS.

    Ladislav Hagara | Komentářů: 0
    19.12. 17:22 | IT novinky

    Josef Průša oznámil zveřejnění kompletních CAD souborů rámů tiskáren Prusa CORE One a CORE One L. Nejsou vydány pod obecnou veřejnou licenci GNU ani Creative Commons ale pod novou licencí OCL neboli Open Community License. Ta nepovoluje prodávat kompletní tiskárny či remixy založené na těchto zdrojích.

    Ladislav Hagara | Komentářů: 14
    Kdo vám letos nadělí dárek?
     (34%)
     (2%)
     (10%)
     (2%)
     (1%)
     (2%)
     (15%)
     (19%)
     (14%)
    Celkem 86 hlasů
     Komentářů: 18, poslední včera 15:30
    Rozcestník

    Dotaz: MySQL query z PHP

    8.8.2010 22:00 cross
    MySQL query z PHP
    Přečteno: 1706×
    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.