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 15:33 | IT novinky

    Po 26 letech od protiprávního policejního zásahu, který byl spuštěn na základě podnětu společnosti Microsoft, Obvodní soud pro Prahu 2 rozsudkem potvrdil, že Mironet prokázal významnou část svého nároku na náhradu škody vůči Ministerstvu spravedlnosti ČR. Soudem nyní přiznaná část nároku znamená rekordní odškodné, jaké kdy české soudy přiznaly za nesprávný postup státu. Spor byl rozdělen na několik škod, u pravomocně uzavřených částí

    … více »
    Ladislav Hagara | Komentářů: 1
    dnes 15:22 | Nová verze

    Lehké desktopové prostředí LXQt bylo vydáno ve verzi 2.4.0. Jde o převážně opravné vydání s drobnými vylepšeními podpory Waylandu.

    |🇵🇸 | Komentářů: 0
    dnes 12:44 | IT novinky

    Počítačová hra Kingdom Come: Deliverance 2 českého studia Warhorse získala cenu BAFTA v kategorii nejlepší příběh. V konkurenci pěti dalších nominovaných děl porazila i úspěšnou francouzskou hru Clair Obscur: Expedition 33, která v letošním ročníku získala cenu za nejlepší hru roku.

    Ladislav Hagara | Komentářů: 1
    dnes 12:22 | Komunita

    Projekt KDE oslaví v říjnu 30 let. Matthias Ettrich poslal 14. října 1996 do diskusní skupiny comp.os.linux.misc zprávu, která započala historii projektu. Důležité milníky jsou zobrazeny na časové ose KDE.

    Ladislav Hagara | Komentářů: 1
    dnes 02:55 | Komunita

    Byly vyhlášeny výsledky letošní volby vedoucí/ho projektu Debian (DPL, Wikipedie). Poprvé povede Debian žena. Novou vedoucí je Sruthi Chandran. Letos byla jedinou kandidátkou. Kandidovala již v letech 2020, 2021, 2024 a 2025. Na konferenci DebConf19 měla přednášku Is Debian (and Free Software) gender diverse enough?

    Ladislav Hagara | Komentářů: 15
    dnes 00:55 | Nová verze

    Byla vydána nová verze 10.3 z Debianu vycházející linuxové distribuce DietPi pro (nejenom) jednodeskové počítače. Přehled novinek v poznámkách k vydání. Přidána byla podpora Orange Pi 4 LTS. Přibyl balíček Prometheus.

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

    Implementace VPN softwaru WireGuard (Wikipedie) pro Windows, tj. WireGuard pro Windows a WireGuardNT, dospěly do verze 1.0.

    Ladislav Hagara | Komentářů: 2
    včera 16:11 | IT novinky

    V Pekingu dnes proběhl 2. ročník půlmaratonu humanoidních robotů. První 3 místa obsadili roboti Honor Lightning v různých týmech. Nový rekord autonomního robota je 50 minut a 26 sekund. Operátorem řízený robot to zvládl i s pádem za 48 minut a 19 sekund. Řízení roboti měli časovou penalizaci 20 %. Před rokem nejrychlejší robot zvládl půlmaraton za 2 hodiny 40 minut a 42 sekund. Aktuální lidský rekord drží Jacob Kiplimo z Ugandy s časem 57 minut a 20 sekund [𝕏].

    Ladislav Hagara | Komentářů: 5
    17.4. 17:11 | Zajímavý článek

    Stanislav Fort, vedoucí vědecký pracovník z Vlčkovy 'kyberbezpečnostní' firmy AISLE, zkoumal dopady Anthropic Mythos (nový AI model od Anthropicu zaměřený na hledání chyb, který před nedávnem vyplašil celý svět) a předvedl, že schopnosti umělé inteligence nejsou lineárně závislé na velikosti nebo ceně modelu a dokázal, že i některé otevřené modely zvládly v řadě testů odhalit ve zdrojových kódech stejné chyby jako Mythos (například FreeBSD CVE-2026-4747) a to s výrazně nižšími provozními náklady.

    MakeIranBombedAgain❗ | Komentářů: 6
    17.4. 12:44 | IT novinky

    Federální návrh zákona H.R.8250 'Parents Decide Act', 13. dubna předložený demokratem Joshem Gottheimerem a podpořený republikánkou Elise Stefanik coby spolupředkladatelkou (cosponsor), by v případě svého schválení nařizoval všem výrobcům operačních systémů při nastavování zařízení ověřovat věk uživatelů a při používání poskytovat tento věkový údaj aplikacím třetích stran. Hlavní rozdíl oproti kalifornskému zákonu AB 1043 a kolorádskému SB26-051 je ten, že federální návrh by platil rovnou pro celé USA.

    MakeIranBombedAgain❗ | Komentářů: 13
    Které desktopové prostředí na Linuxu používáte?
     (14%)
     (8%)
     (1%)
     (12%)
     (30%)
     (3%)
     (6%)
     (2%)
     (15%)
     (25%)
    Celkem 1362 hlasů
     Komentářů: 30, poslední 3.4. 20:20
    Rozcestník

    Dotaz: Divný select...

    poky74 avatar 23.6.2009 17:09 poky74 | skóre: 36 | blog: Zápisník | Vrchlabí
    Divný select...
    Přečteno: 311×
    V phpku dělám celkem dlouho, ale teď už několik hodin (!!!) bádám nad tím, s čím potřebuju poradit...

    Měl by to být script na výběr dat (článku) z db:
    $cislo_clanku=1;
    $pokracovat=1;
    
    while ($pokracovat==1){
    $clanekk=mysql_fetch_array(mysql_query('select * from clanky where id="'.$cislo_clanku.'"'));
    if($clanekk['adr']==$_GET['read']){echo "bingo";$pokracovat=0;}
    $cislo_clanku++;
    }
    
    Tedy je to cykl, který se bude provádět, dokud se mu neřekne dost (respektive nenastaví proměnná $pokracovat na 0).

    Na nulu se to nastaví v případě že $clanekk['adr']==$_GET['read'], v db jsou dva záznamy v kolonce "adr" a to "ahoj" a "cau".

    Bohžel ať je v proměnné $_GET['read'] "ahoj" nebo "cau" tak se zacyklí, proč?

    Díky

    PS. vím, že takhle se to nedělá, ale už jen z principu bych rád přišel na to, proč to nejede...
    Chcete Linuxové samolepky nebo Tuxe na klíče? ->

    Odpovědi

    23.6.2009 18:32 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: Divný select...

    Fujtajbl :), žádné ošetření, procházení znovu a znovu novým selectem - to je docela fičák :)
    ale ...
    Dal bych před if toto

    echo "['".$clanekk['adr']."' = '".$_GET['read']."']<br />";
    

    a na konec

    if($cislo_clanku > 1000) break;

    a díval se co se vypíše - to je takový rychlý „debuger“ :)
    ahoj a cau lze porovnávat pomocí = pokud to teda není jedno v UTF-16 a druhé v UTF-8, ale jinak bych doporučil strcmp()

    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    poky74 avatar 24.6.2009 00:17 poky74 | skóre: 36 | blog: Zápisník | Vrchlabí
    Rozbalit Rozbalit vše Re: Divný select...
    Divné, píše to tohle:
    ['ahoj-ahoj ' = 'cau']
    ['cau ' = 'cau']
    ['' = 'cau']
    ['' = 'cau']
    ['' = 'cau']
    ['' = 'cau']
    ['' = 'cau']
    ['' = 'cau']
    ['' = 'cau']
    ['' = 'cau'].............. TO SAME PORAT DOKOLA
    
    Jinak, pokud jsou nyni v db 2 zaznamy, mel by se cykl vykonat maximalne 2x, ne se zacyklit...
    Chcete Linuxové samolepky nebo Tuxe na klíče? ->
    24.6.2009 00:30 T
    Rozbalit Rozbalit vše Re: Divný select...
    Protoze v databazi jsou ulozeny "ahoj " a "cau " - s mezerou na konci, proto se cyklus nezastavi na podmince rovnosti tech retezcu. Kazdej dalsi select vybere prazdny radek, ale to neni osetreno v podmince cyklu. Takze se program zacykli.
    24.6.2009 08:47 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: Divný select...

    No na tom je jasně vidět kam takový kód vede :)
    Kdyby bylo ošetřeno mysql_query a mysql_query jasně by bylo vidět, že to (asi) na 3. smyčku vrací nulový počet řádků tudíž:
    $clanekk === NULL
    Pokud se jedná o PHP5 (i PHP4 s malou vyjímkou) tak pokud vložíš na začátku kódu

     error_reporting(E_ALL | E_STRICT);//php4 (asi) error_reporting(E_ALL);
     ini_set('display_errors', 'On');
    

    Jistě tam vyjedou nějaká zajímavá hlášení :)
    Jinak 'cau' a 'cau ' není překvapivě totéž :)
    DOPORUČUJI jednoznačně kód ošetřit tzn. minimálně:

    if(!($rs = mysql_query('select * from clanky where id="'.$cislo_clanku.'"')));
    {
     error
    }
    else
      if(!($clanekk=mysql_fetch_array($rs)))
      {
        /*
          pozor na mysqli_xxxx vrací NULL, mysql_xxx false 
        */
        error
      }
      else
      { 
        pokracovat
      }
    }
    

    Po důvodu braní záznamů po jednom nepátrám, jediné takovéto použití co mě napadá:
    snad že řádek je moc veliký (např ø 1Mb) a je jich nekonečně mnoho a provádí se s řádkem nějaké operace a pak se zahodí.
    V tom případě je to odůvodnitelné štření zdrojů na úkor výkonu.
    Také nepátrám proč neporovnat v clausuli WHERE rovnou text :).

     

    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    poky74 avatar 24.6.2009 09:28 poky74 | skóre: 36 | blog: Zápisník | Vrchlabí
    Rozbalit Rozbalit vše Re: Divný select...
    Ejhle, mezery jsem si nevšiml :)

    Teď už se s tím poperu, díky vám za pomoc, mezera me opravdu nenapadla :)
    Chcete Linuxové samolepky nebo Tuxe na klíče? ->
    24.6.2009 09:53 Messa | skóre: 39 | blog: Messa
    Rozbalit Rozbalit vše Re: Divný select...
    Kdybys to porovnával v databázi, tak by mezera na konci nebyla problém, protože ji MySQL u nebinárních typů ignoruje (je to vysvětleno v manuálu).
    23.6.2009 20:50 12345 | skóre: 41 | blog:
    Rozbalit Rozbalit vše Re: Divný select...
    Existuje nějaký rozumný důvod, proč nepoužít WHERE adr = ? a dosadit tam správně ošetřenou (escaping nebo lépe prepared statement) hodnotu $_GET['read']? Tenhle kód si přímo říká o DoS. I kdyby to někdo neudělal záměrně, stačí trochu větší návštěvnost a program si to zařídí sám. Takovými zdrojáky se straší malé servery, případně se objevují na The Daily WTF :-)

    Mimochodem, PHP má datový typ bool.

    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.