Byl představen editor MonoSketch, webová aplikace pro tvorbu diagramů, technických nákresů, flowchartů a různých dalších vizualizací, to vše jenom z ASCII znaků. Všechny operace běží pouze v prohlížeči uživatele a neprobíhá tedy žádné nahrávání dat na server. Zdrojový kód aplikace (drtivá většina Kotlin, žádné C#) je dostupný na GitHubu pod licencí Apache 2.0.
Byla vydána nová verze 3.7.0 multiplatformního svobodného frameworku pro zpracování obrazu G'MIC (GREYC's Magic for Image Computing, Wikipedie). Přehled novinek i s náhledy nových filtrů na PIXLS.US.
Všem na AbcLinuxu vše nejlepší k Valentýnu aneb Dni lásky ke svobodnému softwaru (I love Free Software Day, Mastodon, 𝕏).
Eric Migicovsky představil Pebble Emulator, tj. emulátor hodinek Pebble (PebbleOS) běžící ve webovém prohlížeči. Za 6 hodin jej napsal Claude Code. Zdrojové kódy jsou k dispozici na GitHubu.
Byla vydána nová verze 3.41 frameworku Flutter (Wikipedie) pro vývoj mobilních, webových i desktopových aplikací a nová verze 3.11 souvisejícího programovacího jazyka Dart (Wikipedie).
Rusko zcela zablokovalo komunikační platformu WhatsApp, řekl včera mluvčí Kremlu Dmitrij Peskov. Aplikace, jejímž vlastníkem je americká společnost Meta Platforms a která má v Rusku na 100 milionů uživatelů, podle Peskova nedodržovala ruské zákony. Mluvčí zároveň lidem v Rusku doporučil, aby začali používat domácí aplikaci MAX. Kritici tvrdí, že tato aplikace ruské vládě umožňuje lidi sledovat, což úřady popírají.
Před 34 lety, ve čtvrtek 13. února 1992, se tehdejší Česká a Slovenská Federativní Republika oficiálně (a slavnostně) připojila k Internetu.
Agent umělé inteligence vytvořil 'útočný' článek o Scottu Shambaughovi, dobrovolném správci knihovny matplotlib, poté, co vývojář odmítl agentem navrženou změnu kódu (pull request). 'Uražený' agent autonomně sepsal a publikoval na svém blogu článek, který přisuzuje Shambaughovi smyšlené motivace, egoismus a strach z AI coby konkurence.
Bylo vydáno Ubuntu 24.04.4 LTS, tj. čtvrté opravné vydání Ubuntu 24.04 LTS s kódovým názvem Noble Numbat. Přehled novinek a oprav na Discourse.
V pátek 20. února 2026 se v pražské kanceláři SUSE v Karlíně uskuteční 6. Mobile Linux Hackday, komunitní setkání zaměřené na Linux na mobilních zařízeních, kernelový vývoj a uživatelský prostor. Akce proběhne od 10:00 do večera. Hackday je určen všem, kteří si chtějí prakticky vyzkoušet práci s linuxovým jádrem i uživatelským prostorem, od posílání patchů například pomocí nástroje b4, přes balíčkování a Flatpak až po drobné úpravy
… více »$set["nazev"] = "aaa";
$set["url"] = "bbb";
$set["cat"] = "ccc";
$set["stat"] = "ddd";
mysql_query("UPDATE cat SET ".implode("=".implode($set).", ", array_keys($set))." WHERE id = '".$_POST['id']."'");
tohle potřebuji vyplodit :(
mysql_query("UPDATE cat SET nazev="aaa", url="bbb", cat="ccc", stat="ddd" WHERE id = '".$_POST['id']."'");
ale už vážně nevím jak dál :( Děkuji předem za ochotu a pomoc
Řešení dotazu:
... WHERE id = '".$_POST['id']."' ...Takhle ošetření vstupu rozhodně nevypadá.
id jenom číslo, a když ne, tak skončí :).</troll>
if($_POST['id'] == 12) {
... WHERE id = '".$_POST['id']."' ...
}
else {
die("franto mas to blbe");
}
btw: nerikam, ze je to stastne reseni a videl jsem i horsi reseni, ale jde to
Jen rikam ze nez se zacne odsuzovat nekdo za neco tak treba by to chtelo odpoved:
hele mas chybu v tom a tom tak ti to nejede a chtelo by to resit radeji tak nebo onak
A ne mu nadavat do volu a sql inj a ja nevim ceho jeste.
Odpovidat na konkretni dotaz nebudu protoze uz tu na to nekdo odpovedel s tema apostrofama.
$set["nazev"] = "'aaa'"; $set["url"] = "'bbb'"; ...Ale to by se Orlando nedozvěděl, jaké že tam má chyby a následně by je ještě dlouho opakoval. Navíc je tam ještě pár dalších chyb, které jsou hezky vidět, když se místo funkce mysql_query() použije obyčejné echo.
Tady ti stejně každej bude jen naznačovat že jsi nula a až si to vyřešíš sám tak každej řekne že stejně máš špatnou koncepci. Nečekej že by ti zde někdo řekl "má se to dělat tak a tak a tady je ukázka". Poradna zde klesla na "bouchněte si..." .
V produkční praxi nikdo po nikom "hello world" nechce. A u každého projektu, který začíná jako "hello world" s apostrofy hrozí, že se potom začne používat a růst a potom tam ten bezpečnostní průser zůstane. Proto si myslím, že je nutné, dělat věci správně již od začátku.
Odpověď, kterou bys tady rád viděl, je hned úplně první. Tazatel odpoveď dostal a mohl se zeptat, co to je PDO a Prepared statement. Celá diskuse vnikla na základně jeho odmítavé reakce a já sám reaguji nikoliv na původní dotaz (ten už tu byl několikrát odpovězen), ale na reakci ohledně smyslu poradny. A trván na tom, poradna má sloužit k tomu, aby se věci dělali správně. Ne jen poradit, jak rozchodit nějaký bastl.
Miluju lidi co napisou "hello word" za pouziti 30 objektu, protoze je to "spravne" misto aby napsali echo("hello word"); protoze to je prece spatne (ikdyz se po nich nic vic nechce).Miluju lidi, kteří přijdou do diskuze psát totální sračky a cítí se při tom strašně inteligentně.
Chci tim rict ze odpoved by mela byt: Nemas tam apostrofy a imho lepsi reseni by bylo pouzit napr. PDO protoze ti osetri sql inj. ktery ti zde hrozi jestli nemas poradne osetrene vstupy.Takové odpovědi jsem tu viděl a dotyčný nad nimi ohrnuje nos.
A aby nekdo nenapadal moji anonymitu: http://www.basak.cz, o PHP neco vim a jak rikam, neobhajuju jeho reseni, ja bych to resil jinak, ale reaguji na to jak je zde napadan.Přijde mi, že si pleteš napadeného s člověkem, který kouše do podané ruky. To se lidem stává a nevyčítám ti to, jen tě na to upozorňuju.
Nečekej že by ti zde někdo řekl "má se to dělat tak a tak a tady je ukázka".Jestli sis nevšiml, an on nechce poradit, jak se to dělat má. Ale chce poradit, jak se to dělat nemá. Nad tím tady dost možná nikdo nebude chtít ztrácet čas, ať si zaplatí doučko, jestli chce někoho, kdo bude pracovat podle jeho představ.
Poradna zde klesla na "bouchněte si..." .Tak sis bouchnul do poradny, a co dál?
implode, nechápu, na co se ptáte. Několik lidí tady si myslí, že je to potřeba opravit jinak, a napsali vám jak.
Když se v poradně zeptáte, jak zatlouct hřebík, že to určitě nějak půjde šroubovákem, buďte rád, že jste se dozvěděl, že na zatloukání hřebíků se používá kladivo a šroubovákem vám to moc dobře nepůjde. Pokud na použití šroubováku k zatloukání trváte, je to váš problém, ale nedivte se, že nikdo nechce trávit čas vymýšlením toho, jak by takovou hloupost šlo udělat.
To jste mi poradili, všichni plnou hubu SQL injection ale, že by někdo poradil to ne, jediné co tady tazatel poslední dobou dostane je vysmech!!!Trhni si nohou a jdi se zeptat maminky. Co jiného ti na to mám říct, aby to bylo ještě slušné?
$id=intval($_POST['id']);
$set[]=sprintf("%s='%s'","nazev",mysql_real_escape_string($nazev);
$set[]=sprintf("%s='%s'","url",mysql_real_escape_string($url);
$query="UPDATE cat SET ".implode(", ",$set)." WHERE id=$id;";
Dá se to zjednodušit pomocí funkce array_map(), ale to by na tebe bylo asi moc náročné. Ale jak už jsem psal (nejen já), použití parametrizovaného dotazu je mnohem jednodušší.
A ještě něco: Připadá mi velmi podivné, když někdo stringy nedává do apostrofů a čísla jimi obaluje. Má to být přesně naopak.
mysql_query("UPDATE `cat` SET
`nazev` = '".mysql_real_escape_string($_POST["nazev"])."',
`url` = '".mysql_real_escape_string($_POST["url"])."'
WHERE `id` = ".intval($_POST["id"])."");
je k ničemu a nejde bezpečně použít. Fakt to nechápu
$update=$db->prepare("UPDATE cat SET nazev=:nazev, url=:url WHERE id=:id;");
$update->execute(array(':nazev'=>$_POST['nazev'],':url'=>$_POST['url'],':id'=>$_POST['id']));
Řekl bych, že tohle je velmi blízko tvému původnímu požadavku. Jen je potřeba opustit zastaralý ovladač mysql a naučit se PDO. Existuje i kratší zápis, ale ten v manuálu snadno najdeš. Místo názvů parametrů jsou pak jen otazníky a parametry jsou poziční.
mysql_real_escape(), který – pokud použijete správnou verzi PHP se správnou verzí MySQL – pravděpodobně bude fungovat. Lepší je ale dělat to rovnou správně a použít parametrické dotazy.
"WHERE id = '".$_POST['id']."'"zatímco v citovaném
"WHERE `id` = ".intval($_POST["id"]).""
function dvojice($key,$val) {
$value=mysql_real_escape_string($val);
return "$key='$value'";
}
$id=intval($_POST['id']);
$query="UPDATE cat SET ".implode(", ",array_map('dvojice',array_keys($set),$set))." WHERE id=$id;";
Je to jen momentální nápad, jak by se to také dalo udělat. Dalo by se to upravit i do podoby vhodné pro parametrizované dotazy.
Tiskni
Sdílej: