V červnu byla představena aplikace Myna pro převod řeči na text v prostředí desktopu Ubuntu. Včera byla Myna zpřístupněna širší komunitě Ubuntu formou technologické ukázky dostupné v Ubuntu 24.04 LTS, Ubuntu 26.04 LTS a Ubuntu 26.10 s GNOME na Waylandu.
Ubuntu 27.04 bude Tenacious T-Rex.
Byla vydána nová verze 2026.4.0 "Never-slop" svobodného softwaru ScummVM (Wikipedie) umožňujícího bezproblémový běh mnoha klasických adventur na zařízeních, pro které nebyly nikdy určeny. Přehled novinek v poznámkách k vydání a na GitHubu. ScummVM oslavil 25 let. Verze 0.0.1 vyšla 8. října 2001.
Kanadský vývojář Anthony Sistilli vytvořil ironický DIY projekt parodující kamerové systémy Flock, s cílem názorně demonstrovat rizika masového sledování jaké provozují tyto komerční ALPR systémy. Z levné IP kamery a vlastního ML softwaru (napsaného s pomocí SI circa za 20 minut, kód se mi bohužel nepodařilo dohledat) běžícího v laptopu sestavil jednoduchý systém, který detekuje výhradně policejní vozidla, zaznamenává jejich SPZ a
… více »Část údajů uživatelů internetového supermarketu Rohlík byla odcizena. Kyberútočníci napadli nástroj zákaznické podpory Rohlíku, odcizili tak jména, e-mailové adresy, v některých případech také telefonní čísla nebo přepisy komunikace mezi klienty a zákaznickou podporou. Rohlík incident nahlásil příslušným orgánům a přijal příslušné opatření, aby zamezil podobným případům v budoucnosti, uvedla firma.
Aplikace eDoklady fungovala v obou volebních dnech stabilně a prakticky bez front. Digitální a informační agentura (DIA) odhaduje, že se digitálním dokladem prokázalo více než 100.000 voličů. Aplikaci si před volbami či během nich aktualizovalo 247.517 uživatelů. Nových registrací bylo 19.431 a do aplikace se přihlásilo 357.879 lidí. Největší nápor přišel bezprostředně po otevření volebních místností mezi 14. a 16. hodinou, kdy si
… více »Začal semestr, začal i podzim a kromě hub rostou jako po dešti i veřejné dílny v Praze. Nedávno strahováci referovali o hackerspacu Bordel, nyní se otevřela dílna Dejvice Lab jen kousek od ČVUT. Na blížící Virtuální Bastlírně tak uslyšíte nejen report z návštěvy dílny HWLab, ale i řadu novinek, událostí a úsměvných momentů, které se za poslední měsíc ve světě techniky, ale i vědy udály. Připojte se tedy již v úterý 13.10. od 20:00 a zapojte se do
… více »Byl vydán LineageOS 24 (Mastodon). LineageOS (Wikipedie) je svobodný operační systém pro chytré telefony, tablety a set-top boxy založený na Androidu. Jedná se o nástupce CyanogenModu. LineageOS 24 je založený na Androidu 17.
Společnost Valve publikovala na svém GitLabu nákresy a schémata zapojení headsetu Steam Frame. Pro nekomerční účely.
Soutěž Pwn2Own Ireland 2026 skončila 9. října. Bezpečnostní výzkumníci získali celkem 1 262 000 dolarů na odměnách. Během soutěže bylo předvedeno zneužití 98 zero-day zranitelností. Testování zahrnovalo různé kategorie zařízení a software. Výzkumníci předváděli prakticky fungující útoky podle pravidel soutěže. Výsledky následně slouží výrobcům při přípravě oprav. Mezi pokořenými jsou: Samsung Galaxy S26, OpenAI Codex, Oracle Autonomous AI Database, Google Pixel 10, u iPhone 17 neuspěli.
isset($_REQUEST['submit_name'])?
Ad 2. Místo typu checkboxu použijte typ radiobutton se stejnou hodnotou atributu name a různou hodnotou atributu value. Nevyplnění testuje přes empty($_REQUEST['radio_name']).
Ad 3. Netuším, co přesně myslíte. Každopádně při jakémkoliv zápisu do souboru pozor na race-conditions.
Takhle ošklivý kód v PHP jsem už dlouho neviděl. Již chápu, proč si někteří o programátorech v PHP myslí nepěkné věci. Přitom v PHP se dá programovat čistě a objektově, na straně databáze si vytvořit ORM a v prezenční vrstvě využívat XML spolu s DOM a XSL.
Sám používám pro zpracování formulářů v PHP vlastní (zatím nedokončenou) třídu, která se velmi inspirovala syntaxí XForms. Vytvoření formuláře včetně kontroly vstupních dat je pak záležitost editace jednoho XML souboru.
<?php echo '<br />'?> <b>Kontakt:</b> <?php echo '<br />'>by stacilo
<br /> <b>Kontakt:</b> <br />a este takovej trik kterej sem taky nedavno objevil:
I have <?=$foo?> foo. == I have <? echo $foo?> foo. viz man echo
Obcas se to hodi.. neco zprehledni...
PHPčkáři jsou schopni vyplodit takové prasečiny, že to překoná fantazii všeho co si dokážete představit.
Ono to souvisí s tím, že práce okolo webů, tedy i PHP patří obecně k těm nejhůře placeným v IT sektoru a prakticky každý, kdo má na něco víc, než je psaní v PHP jakožto hlavní náplň, odchází jinam dělat něco jiného. Takže logicky zbývají jakožto "profesionální programátoři v PHP" pouze Ti, kteří nic jiného nezvládnou, tedy kvalita tomu odpovídá. Samozřejmě nechci zobecňovat a najdou se i velmi dobří lidé.
Já bych hlavně předeslal, že při používání souboru jakožto "emulace databáze" je potřeba si uvědomit, že za jistých okolností dojde k paralelnímu zápisu od několika zapisujících a je třeba to v PHP řešit.Coz je velmi problematicke, pokud se to ma udelat prenositelne. Osobne jsem to resil jen jednou - u celkem jednoduche ankety. V ostatnich pripadech jsem problem vysvetlil problem zakaznikovy a ten si vzdy radeji priplatil za databazi. A v tom prvnim pripade jsem vyuzil toho, ze operace prejmenovani souboru je na unixech atomicka, takze nemuze dojit k tomu, aby soubor zustal v nejakem nedefinovanem stavu. Jedine jednoduche reseni je ukladat data ko samostatnych souboru, pak staci zajistit jen unikatni jmeno. Nebo je mozne nechat osetreni paralelniho zapisu na necem jinem, napr. poslat vyslednky na lokalni mailovou schranku.
flock() je IMHO dost přenositelné řešení. (Kdo provozuje server s FAT souborovym systémem nic jinýho než ztrátu dat stejně nemůže očekávat a NFS u webserverů taky neni zrovna obvyklé řešení...)
Neexistuje žádná bezpečná a neproblematická cesta pro paralelní práci se soubory pomocí PHP. Jediná neproblematická a plně přenositelná cesta je použití databáze.
To ano, ale pokuď už se se soubory pracuje, je to nejlepší z možných "špatných" řešení. Rozhodně mnohem lepší, než všechny ty zde navrhované "řešení". Já používám většinou něco takového:
$fp = fopen($soubor, 'a');
ignore_user_abort(1);
for($i=0; $i<3; $i++) {
if (flock($fp, LOCK_EX)) {
fwrite($fp, $data);
flock($fp, LOCK_UN);
break;
}
usleep(100);
}
fclose($fp);
ignore_user_abort(0);
O moc bezpečnější "univerzální" řešení v PHP nevymyslíte, tak proč vymejšlet ptákoviny...
error_log("Obsah, co se zapise do souboru", 3, "jmeno_souboru.pripona");
Jak vidíte, v PHP jde leccos a je tam daleko více možností, škoda že za PHP tak málo platí, takže v PHP už moc nedělám. Jak vidíte, lepší a bezpečnější řešení v PHP vymyslím docela snadno
Jak vidíte, lepší a bezpečnější řešení v PHP vymyslím docela snadno
Já ale mluvím o "univerzálním" řešení, tedy takovém, kde můžu zapisovat od začátku souboru nebo v něm dokonce seekovat...
Celou dobu se tu snažím ukázat, že než tyhle "hacky", který fungují pouze ve speciálních případech a spoléhají na vlastosti funkcí, které nikde nejsou zdokumentovány (zdá se logické, že funkce pro zápis do logu by měla být "odolná" proti vícenásobnému současnému zápisu, ale je tomu skutečně tak?!) to radši "standartní" (PHP funkce sloužící právě k tomuto účelu) flock() i s jeho nedostatky. Protože o "vnitřnostech" PHP (na všech možných OS/souborových systémech!) a tudíž i atomičnosti operací víme ve skutečnosti kuloví (pokuď u snídaně běžně louskáte zdrojáky PHP tak se omlouvám...
).
) -- absolutne bez ohledu na to, jaky jsi zacatecnik a bez ohledu na to jak mala by ta aplikace mela byt. Je to vec cistoty navrhu a kdyz se to naucis u prkotin, bude to pak pro tebe samozrejmost i u vetsich veci.
A jaké nástroje jsou pro paralelní zápis do XML tak, aby byla zachována konzistence? Neútočím, jenom se ptám, byla by to príma.Priznam se, ze nevim. Na flat XML jsem stavel vzdy jen aplikace, u kterych jsem vedel, ze je prakticky nemozne, aby k takovemu scenari doslo. Coz priznavam -- je u guestbooku blbost. A i celkove je to dost divne, hlavne proto, ze by musel zamykat kvuli zapisu jednoho zaznamu cely soubor. Pri pouziti TXT ale moc techto problemu nevyresi. Nejlepsi asi bude precejen zvolit nejakou databazi, treba jen SQLite. Vzdyt nejakou tu relacni DB clovek dneska najde snad na kazdem hostingu. A i pak se to XSLT da pouzit (treba s Query2XML, celkem schopna knihovna).
Panebože ty jsi magor :D Takovouhle píčovinu jsem už dlouho nevyděl! Nejde ti to blbečku.
Tiskni
Sdílej: