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í
×
    včera 17:44 | Zajímavý článek

    Jak si zobrazit pomocí Chrome a na Chromiu založených webových prohlížečích stránky s neplatným certifikátem? Stačí napsat thisisunsafe.

    Ladislav Hagara | Komentářů: 0
    včera 00:33 | Bezpečnostní upozornění

    V repozitáři AUR (Arch User Repository) linuxové distribuce Arch Linux byly nalezeny a odstraněny tři balíčky s malwarem. Jedná se o librewolf-fix-bin, firefox-patch-bin a zen-browser-patched-bin.

    Ladislav Hagara | Komentářů: 9
    včera 00:22 | Komunita

    Dle plánu by Debian 13 s kódovým názvem Trixie měl vyjít v sobotu 9. srpna.

    Ladislav Hagara | Komentářů: 0
    19.7. 13:22 | Komunita

    Vývoj linuxové distribuce Clear Linux (Wikipedie) vyvíjené společností Intel a optimalizováné pro jejich procesory byl oficiálně ukončen.

    Ladislav Hagara | Komentářů: 1
    18.7. 14:00 | Zajímavý článek

    Byl publikován aktuální přehled vývoje renderovacího jádra webového prohlížeče Servo (Wikipedie).

    Ladislav Hagara | Komentářů: 0
    18.7. 12:00 | Nová verze

    V programovacím jazyce Go naprogramovaná webová aplikace pro spolupráci na zdrojových kódech pomocí gitu Forgejo byla vydána ve verzi 12.0 (Mastodon). Forgejo je fork Gitei.

    Ladislav Hagara | Komentářů: 1
    17.7. 18:44 | Zajímavý článek

    Nová čísla časopisů od nakladatelství Raspberry Pi zdarma ke čtení: Raspberry Pi Official Magazine 155 (pdf) a Hello World 27 (pdf).

    Ladislav Hagara | Komentářů: 1
    17.7. 16:11 | Nová verze

    Hyprland, tj. kompozitor pro Wayland zaměřený na dláždění okny a zároveň grafické efekty, byl vydán ve verzi 0.50.0. Podrobný přehled novinek na GitHubu.

    Ladislav Hagara | Komentářů: 4
    17.7. 15:55 | Komunita

    Patrick Volkerding oznámil před dvaatřiceti lety vydání Slackware Linuxu 1.00. Slackware Linux byl tenkrát k dispozici na 3,5 palcových disketách. Základní systém byl na 13 disketách. Kdo chtěl grafiku, potřeboval dalších 11 disket. Slackware Linux 1.00 byl postaven na Linuxu .99pl11 Alpha, libc 4.4.1, g++ 2.4.5 a XFree86 1.3.

    Ladislav Hagara | Komentářů: 6
    16.7. 21:22 | IT novinky

    Ministerstvo pro místní rozvoj (MMR) jako první orgán státní správy v Česku spustilo takzvaný „bug bounty“ program pro odhalování bezpečnostních rizik a zranitelných míst ve svých informačních systémech. Za nalezení kritické zranitelnosti nabízí veřejnosti odměnu 1000 eur, v případě vysoké závažnosti je to 500 eur. Program se inspiruje přístupy běžnými v komerčním sektoru nebo ve veřejné sféře v zahraničí.

    Ladislav Hagara | Komentářů: 19
    Kolik tabů máte standardně otevřeno ve web prohlížeči?
     (26%)
     (18%)
     (6%)
     (6%)
     (3%)
     (6%)
     (3%)
     (32%)
    Celkem 34 hlasů
     Komentářů: 4, poslední včera 16:33
    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: 578×
    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.