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 17:33 | Zajímavý článek

    Joe Brockmeier z Linux Weekly News vyzkoušel různé forky webového prohlížeče Mozilla Firefox: především GNU IceCat, Floorp, LibreWolf a Zen. V článku shrnuje, v čem se liší od výchozí konfigurace Firefoxu, co mají za vlastní funkcionalitu, jak a kým jsou udržované atd.

    Fluttershy, yay! | Komentářů: 0
    včera 19:22 | Nová verze

    Byl vydán Debian 12.10, tj. desátá opravná verze Debianu 12 s kódovým názvem Bookworm. Řešeny jsou především bezpečnostní problémy, ale také několik vážných chyb. Instalační média Debianu 12 lze samozřejmě nadále k instalaci používat. Po instalaci stačí systém aktualizovat.

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

    Byla vydána nová verze 4.5 svobodného notačního programu MuseScore (Wikipedie). Představení novinek v oznámení v diskusním fóru a také na YouTube.

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

    Byla vydána nová verze 8.6.0 správce sbírky fotografií digiKam (Wikipedie). Přehled novinek i s náhledy v oficiálním oznámení (NEWS). Nejnovější digiKam je ke stažení také jako balíček ve formátu AppImage. Stačí jej stáhnout, nastavit právo ke spuštění a spustit.

    Ladislav Hagara | Komentářů: 0
    včera 04:44 | Komunita

    O víkendu probíhá v Praze na Karlově náměstí 13 konference Installfest 2025. Na programu je celá řada zajímavých přednášek a workshopů. Vstup je zdarma. Přednášky lze sledovat i online na YouTube.

    Ladislav Hagara | Komentářů: 1
    14.3. 22:11 | Nová verze

    Byla vydána nová verze 2.49.0 distribuovaného systému správy verzí Git. Přispělo 89 vývojářů, z toho 24 nových. Přehled novinek v příspěvku na blogu GitHubu a v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    14.3. 19:00 | IT novinky

    Premiér Petr Fiala (ODS) dnes na síti X vyloučil, že by za jeho vlády mohla začít platit vyhláška, podle níž by poskytovatelé internetového připojení měli uchovávat adresy internetových stránek, na které se lidé připojují.

    Ladislav Hagara | Komentářů: 4
    14.3. 12:33 | Komunita

    Flock 2025, tj. konference pro přispěvatele a příznivce Fedory, proběhne od 5. do 8. června v Praze.

    Ladislav Hagara | Komentářů: 0
    13.3. 17:29 | Komunita

    Zemřel Mark Klein, který dlouhá léta pracoval pro telekomunikační firmu AT&T a proslavil se jako whistleblower, když zveřejnil informace o spolupráci AT&T s agenturou NSA. Cílem spolupráce bylo sledovat veškerou komunikaci občanů za pomocí zařízeních v místnosti 641A. O spolupráci obou subjektů napsal knihu Wiring Up The Big Brother Machine...And Fighting It.

    Max | Komentářů: 0
    13.3. 16:33 | Nová verze

    Byla vydána nová verze 16 integrovaného vývojového prostředí (IDE) Qt Creator. Podrobný přehled novinek v changelogu.

    Ladislav Hagara | Komentářů: 0
    Jaké je vaše preferované prostředí?
     (27%)
     (1%)
     (1%)
     (1%)
     (1%)
     (2%)
     (64%)
     (2%)
    Celkem 145 hlasů
     Komentářů: 5, poslední 13.3. 11:45
    Rozcestník

    Dotaz: MySQL query z PHP

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