abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    včera 22:00 | Zajímavý článek

    Byly zveřejněny výsledky průzkumu mezi vývojáři v programovacím jazyce Rust: 2023 Annual Rust Survey Results. Téměř 70 % účastníků průzkumu vyvíjí na Linuxu, 85 % pro Linux, téměř 62 % používá Visual Studio Code, …

    Ladislav Hagara | Komentářů: 0
    včera 21:11 | Nová verze

    Dlaždicový správce oken, resp. kompozitor pro Wayland Sway byl vydán ve verzi 1.9 založené na wlroots 0.17. Měl by poskytovat lepší výkon a přidává několik konfiguračních voleb, příkazů atd.

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

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

    Ladislav Hagara | Komentářů: 0
    24.2. 17:11 | Nová verze

    KiCad (Wikipedie), sada svobodných softwarových nástrojů pro počítačový návrh elektronických zařízení (EDA), byl vydán v nové major verzi 8.0.0 (𝕏). Přehled novinek v příspěvku na blogu.

    Ladislav Hagara | Komentářů: 0
    24.2. 16:55 | Nová verze

    Na čem aktuálně pracují vývojáři GNOME a KDE? Pravidelný přehled novinek v Týden v GNOME a Týden v KDE.

    Ladislav Hagara | Komentářů: 0
    24.2. 12:33 | Nová verze

    Google zveřejnil seznam 195 organizací přijatých do letošního Google Summer of Code (GSoC). Dle plánu se zájemci přihlašují od 18. března do 2. dubna. Vydělat si mohou od 750 do 6600 dolarů. V Česku a na Slovensku je to 900 dolarů za malý, 1800 dolarů za střední a 3600 dolarů pro velký projekt. Další informace v často kladených otázkách (FAQ). K dispozici jsou také statistiky z minulých let.

    Ladislav Hagara | Komentářů: 0
    24.2. 08:00 | Nová verze

    Mixxx (Wikipedie), tj. svobodný software určený (nejenom) pro diskžokeje, byl vydán v nové major verzi 2.4.0. Přehled novinek i s videi v oficiálním oznámení. Aktualizována byla také uživatelská příručka. Oficiální flatpak je k dispozici na Flathubu.

    Ladislav Hagara | Komentářů: 0
    23.2. 18:44 | IT novinky

    Softwarová společnost Avast musí ve Spojených státech zaplatit pokutu 16,5 milionu dolarů (více než 386 milionů Kč) a přestat prodávat data o uživatelích k reklamním účelům. V tiskové zprávě to ve čtvrtek oznámila americká Federální obchodní komise (FTC). Společnost Avast se sídlem v Británii se podle FTC nedovoleného jednání dopouštěla přes svou českou součást Jumpshot.

    Ladislav Hagara | Komentářů: 40
    23.2. 14:33 | Zajímavý článek

    Andrey Konovalov popisuje, jak se mu podařilo na notebooku Lenovo ThinkPad X1 Carbon 6. generace povolit řadič xDCI, aby umožnil emulaci libovolných USB zařízení.

    Fluttershy, yay! | Komentářů: 1
    23.2. 10:00 | Nová verze

    Armbian, tj. linuxová distribuce založená na Debianu a Ubuntu optimalizovaná pro jednodeskové počítače na platformě ARM a RISC-V, ke stažení ale také pro Intel a AMD, byl vydán ve verzi 24.2 Kereru. Přehled novinek v Changelogu.

    Ladislav Hagara | Komentářů: 0
    Kolik máte nálepek na víku notebooku?
     (17%)
     (60%)
     (5%)
     (4%)
     (5%)
     (9%)
    Celkem 386 hlasů
     Komentářů: 14, poslední 24.2. 17:01
    Rozcestník

    Dotaz: PHP - Jak na zápis sql dotazu z array

    19.10.2011 13:39 Dědek
    PHP - Jak na zápis sql dotazu z array
    Přečteno: 557×
    Ahoj všem. poraí někdo jak načíst data? Mám funkci result_id() která vrací 26,46,47,48 ale nevím jak napsat sql dotaz a while. Zkoušel jsem to takto.
    $sql = mysql_query("SELECT * FROM rato WHERE cat IN ('".result($id)."')");
    
         while($row = mysql_fetch_assoc($sql)) {
              
              echo $row['id'] . "</br>";
    
         }
    ale vypisuje se jen jeden řádek :( Díky za pomoc

    Řešení dotazu:


    Odpovědi

    Salamek avatar 19.10.2011 13:54 Salamek | skóre: 22 | blog: salamovo
    Rozbalit Rozbalit vše Re: PHP - Jak na zápis sql dotazu z array
    $sql = 'SELECT * FROM rato WHERE cat IN ('.result($id).') ';
    $result = mysql_query($sql);
    //prepraseni do neceho pouzitelnejsiho
    while(($resultArray[] = mysql_fetch_assoc($result)) || array_pop($resultArray)); 
    
    foreach($resultArray AS $k=>$v)
    {
       echo $v['id'].'
    '."\n"; }
    Ale nejlepsi by bylo kdyby jsi nam rekl co presne zamyslis provest, treba by jsme ti navrhli lepsi reseni (ze strany SQL ci PHP)
    Skutečně nemám v plánu zničit Microsoft. Bude to jen zcela neúmyslný vedlejší efekt.
    19.10.2011 15:16 aaa
    Rozbalit Rozbalit vše Re: PHP - Jak na zápis sql dotazu z array
    Nahrad
    $sql = mysql_query("SELECT * FROM rato WHERE cat IN ('".result($id)."')");
    za
    $sql = mysql_query("SELECT * FROM rato WHERE cat IN (".result($id).")");
    20.10.2011 17:32 Dědek
    Rozbalit Rozbalit vše Re: PHP - Jak na zápis sql dotazu z array
    požadované id z pole: 26,46,47,481
    to co napsal Salamek vypisuje radky s id: 1,2,1,2,3,1,2,3,4,1,2,3,4,5,1,2,3,4,5,2670
    
    to co napsal blondak vypisuje radky s id: 2,3,4,5,2670
    ani jedna možnost není dobře :( Proč?
    AraxoN avatar 20.10.2011 19:01 AraxoN | skóre: 47 | blog: slon_v_porcelane | Košice
    Rozbalit Rozbalit vše Re: PHP - Jak na zápis sql dotazu z array
    Preto, lebo nikto za Teba nebude robiť Tvoju prácu.
    20.10.2011 19:35 Kit
    Rozbalit Rozbalit vše Re: PHP - Jak na zápis sql dotazu z array
    Je to proto, že už tvé zadání je zřejmě špatně. Zkus zapřemýšlet, jak jsi přišel k seznamu požadovaných ID. Zřejmě už přeměna seznamu těchto ID na řetězec byla nesmyslná. Tedy v případě, že ten seznam byl získán ze stejné databáze.

    Zkus myšlenkově couvnout a napiš nám, jakým postupem jsi přišel k seznamu 26,46,47,481. Je možné, že se celá úloha dá vyřešit jediným SQL dotazem bez takového mezivýpočtu.
    Salamek avatar 27.10.2011 10:07 Salamek | skóre: 22 | blog: salamovo
    Rozbalit Rozbalit vše Re: PHP - Jak na zápis sql dotazu z array
    napis nam presne co zamyslis, je mozne ze by tohle cele vyreseli jeden JOIN
    Skutečně nemám v plánu zničit Microsoft. Bude to jen zcela neúmyslný vedlejší efekt.
    Josef Kufner avatar 29.10.2011 17:34 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: PHP - Jak na zápis sql dotazu z array
    To není správně -- Je to náchylné na SQL Injection.

    Správně je, aby funkce result() vrátila pole a pak udělat něco jako toto:
    $sql = mysql_query("SELECT * FROM rato WHERE cat IN (\"".join('","', array_map('mysql_real_escape', result($id))."\")");
    Ale ještě lepší je použít join nebo subselect (pokud to je možné).
    Hello world ! Segmentation fault (core dumped)
    Josef Kufner avatar 29.10.2011 17:35 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: PHP - Jak na zápis sql dotazu z array
    Příště si vypiš sestavený SQL dotaz, tak jak ho předáš do mysql_query(). Sám uvidíš, kde je chyba.
    Hello world ! Segmentation fault (core dumped)
    27.10.2011 09:22 neasi
    Rozbalit Rozbalit vše Re: PHP - Jak na zápis sql dotazu z array
    Neviem ako to je s assoc ale mne array funguje takto $sql = mysql_query("SELECT * FROM rato WHERE cat IN ('".result($id)."')");

    while($row = mysql_fetch_array($sql)) { echo $row['id'] . "br";

    }

    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.