Ve španělské A Coruñě probíhá GUADEC 2026, tj. letošní konference vývojářů a uživatelů desktopového prostředí GNOME. Videozáznamy přednášek jsou k dispozici na YouTube.
Společnost Collabora ve spolupráci s Valve vyvíjí Holo Core, tj. port Arch Linuxu pro ARM64 procesory (AArch64), který bude pohánět VR headset Steam Frame. Pro testování Arch Linuxu pro AArch64 jsou k dispozici binární balíčky, zdrojové kódy i kontejner pro Docker nebo Podman.
Mikroprocesor Zilog Z80 byl oficiálně uveden na trh před 50 lety, tj. v červenci 1976. Výroba mikroprocesoru skončila v roce 2024.
Výzkumníci ze společnosti ESET objevili 11 zapomenutých UEFI shim zavaděčů, které byly podepsány společností Microsoft, a které umožňují útočníkům obejít ochranu UEFI Secure Boot na většině zařízení. Microsoft je zneplatnil (přidal jejich hash do databáze dbx) v rámci aktualizace Patch Tuesday dne 9. června 2026. Uživatelé Linuxu mohou databází aktualizovat pomocí LVFS. Ověřit zneplatnění zavaděčů lze pomocí skriptu uefi-dbx-audit. Jedná se o CVE-2026-8863 a CVE-2026-10797.
pico-usb-wifi je open source firmware pro Raspberry Pi Pico W, který jej promění v USB Wi-Fi adaptér. Po připojení k počítači se objeví jako zařízení USB CDC-NCM.
Americká společnost Google ze skupiny Alphabet bude muset podle nových požadavků Evropské unie umožnit společnosti OpenAI i dalším konkurentům v oblasti umělé inteligence (AI) a internetových vyhledávačů přístup ke svým službám. Ve svém rozhodnutí o tom včera informovala Evropská komise (EK). Opatření má zajistit dodržování pravidel, jejichž cílem je omezit v EU tržní sílu velkých technologických firem. Google s tím nesouhlasí.
… více »Nové verze webových prohlížečů Chrome a Firefox jsou vydávány každé 4 týdny. Aktuální verze Chrome je 150. Aktuální verze Firefoxu je 152. V březnu bylo oznámeno, že od září přejde Chrome na dvoutýdenní cyklus vydávání verzí. To by znamenalo, že Chrome v číslování verzí Firefox brzy přeskočí. Vývojáři Firefoxu proto také od září přecházejí na dvoutýdenní cyklus vydávání verzí. :-)
Microsoft Comic Chat (Wikipedie), tj. grafický IRC klient z devadesátek, který převáděl konverzace na IRC do podoby komiksových panelů, a který zpopularizoval font Comic Sans, je dnešním dnem open source. Zdrojové kódy jsou k dispozici na GitHubu pod licencí MIT.
Byla vydána (𝕏) nová verze 26.7 open source firewallové a routovací platformy OPNsense (Wikipedie). Jedná se o fork pfSense postavený na FreeBSD. Kódový název OPNsense 26.7 je Xenial Xenops. Přehled novinek v příspěvku na fóru.
Na Seznam nepovolených internetových her (Wikipedie) se k 13. 7. 2026 dostala predikční platforma Polymarket.
id 1, platí od 8:00 do 10:00 id 2, platí od 1:00 do 21:00 id 3, platí od 22:00 do 3:00akým príkazom môžem vyselektovať všetky riadky, ktoré platia pre určitú hodinu? malo by mi to vrátiť pre 9:00hod id 1 a 2, pre povedzme 2:00 id 2 a 3. vďaka za nakopnutie vopred
Řešení dotazu:
IF(od < do, od < vstup AND do > vstup, od > vstup AND do < vstup)
vstup je požadovaná hodina.
select * from /tabulka/ where /dana_hodina/ BETWEEN /od/ AND /do/
SELECT * FROM /tabulka/ WHERE (/dana_hodina/ BETWEEN /od/ AND /do/) OR (/dana_hodina/ BETWEEN /do/ AND /od/)
, takže v tý druhý podmínce jsem udělal chybu.
Ta druhá podmínka musí bejt samo znegovaná, což už se ale bude blížit Filipovu řešení. Je ale
elegantnější řešení:
SELECT * FROM /tabulka/ WHERE (/dana_hodina/ < /od/ = /dana_hodina/ > /do/) = (/od/ <= /do/)a zaručeně funkční.
'SELECT * FROM __temp_oddo WHERE ('.$dana_hodina.'< `od` = '.$dana_hodina.' > `do`) = (`od` <= `do`)'ale teraz mi pri akomkoľvek čísle vyhadzuje posledný riadok databázy. :(
4 < 22 = true 4 > 3 = true takže ($dana_hodina < `od` = $dana_hodina > `do`) = true a to se nerovná (22 <= 4) = falseZkus si následující skript
create temporary table intervaly as select 2 as odd, 6 as ddo; create temporary table hodiny as select 1 as hodina; insert into hodiny values (2),(3),(4),(5),(6),(7),(8),(9),(10),(11),(12); SELECT hodina, FROM intervaly, hodiny WHERE ((hodina < odd) = (hodina > ddo)) = (odd<=ddo)a měň si tam údaj v tabulce intervaly - uvidíš, že to funguje. PS: Ad Tvoje přepsání: doufám, že $dana_hodina předtím alespoň konvertuješ na int.
"SELECT $dana_hodina, od, do , $dana_hodina < `od`, $dana_hodina < `do`, `od` <= `do`, ($dana_hodina.'< `od` = '.$dana_hodina.' > `do`) = (`od` <= `do`)' FROM __temp_oddo"Co ti z něj vyleze (např. vardumpni všechny řádky, jestli to neumíš dostat líp, ale spíš bych to vyzkoušel z konsole/nějakýho webovýho rozhraní).
ID od do 1 8 10 2 1 21 3 22 3v premennej $dana_hodina je v php skripte zadefinovaný integer povedzme 9. ak použijem
$result = mysql_query('SELECT * FROM __temp_oddo WHERE ('.$dana_hodina.'< `od` = '.$dana_hodina.' > `do`) = (`od` <= `do`)'); tak mi to vypíše id posledného riadku. niečo robím zle, ale čo?
echo 'SELECT * FROM __temp_oddo WHERE ('.$dana_hodina.'< `od` = '.$dana_hodina.' > `do`) = (`od` <= `do`)'
jestli se Ti ten dotaz složí dobře a zadruhý si vypsat mezivýsledky:
$result = mysql_query("SELECT
$dana_hodina, `od`, `do` , $dana_hodina < `od`, $dana_hodina < `do`, `od` <= `do`,
($dana_hodina '< `od` = $dana_hodina > `do`) = (`od` <= `do`)'
FROM __temp_oddo");
abychom zjistili, kde to počítá blbě. Anebo použij to filipovo řešení, dělal jsem testy a MySQL to volání funcke IF optimalizuje, takže je výsledek dokonce o fous rychlejší než mýho. Ale bejt Tebou bych chybu zjistil, jednak kvůli poučení, a jednak, abys vyloučil, že tam máš nějakou chybu jinde.
Array
(
[0] => 2
[2] => 10
[1] => 8
[od] => 8
[do] => 10
[3] => 1
[2 < `od`] => 1
[4] => 1
[2 < `do`] => 1
[5] => 1
[`od` <= `do`] => 1
[6] => 0
[(2 < `od` = 2 > `do`) = (`od` <= `do`)] => 0
)
inak, zdá sa, že mi tento príkaz funguje a vyhodnocuje správne:
$result = mysql_query("SELECT * FROM __temp_oddo WHERE IF(od <= do, od <= $dana_hodina AND do >= $dana_hodina, od <= $dana_hodina OR do >= $dana_hodina)");
tento príkaz
$result = mysql_query("SELECT * FROM __temp_oddo WHERE IF(od < do, od < $dana_hodina AND do > vstup, od > $dana_hodina AND do < $dana_hodina)");
mi hádže chybu E_WARNING: mysql_fetch_array() expects parameter 1 to be resource, boolean given
CREATE TABLE `aaa` ( `uid` INT(10) UNSIGNED NOT NULL, `od` DATETIME DEFAULT '0000-00-00 00:00:00', `do` DATETIME DEFAULT '0000-00-00 00:00:00', PRIMARY KEY (`uid`), KEY `Index_Od` (`od`), KEY `Index_Do` (`do`) ) ENGINE=MYISAM ;Vložíme zopár údajov:
INSERT INTO `aaa` VALUES (1, '1000-01-01 08:00:00', '1000-01-01 10:00:00'); INSERT INTO `aaa` VALUES (2, '1000-01-01 01:00:00', '1000-01-01 21:00:00'); INSERT INTO `aaa` VALUES (3, '1000-01-01 22:00:00', '1000-01-01 03:00:00'); INSERT INTO `aaa` VALUES (4, '1000-01-01 15:00:00', '1000-01-01 22:00:00'); INSERT INTO `aaa` VALUES (5, '1000-01-01 20:00:00', '1000-01-01 10:00:00'); INSERT INTO `aaa` VALUES (6, '1000-01-01 12:00:00', '1000-01-01 06:00:00');DATETIME má rozsah '1000-01-01 00:00:00' až '9999-12-31 23:59:59'. Nám stačí použiť pri vkladaní časov dátum '1000-01-01' rovnako pre `od` a `do`. Ak by bolo možné zabezpečiť pri menšom `do` ako je `od` použitie dátumu '1000-01-02', bolo by to asi ešte lepšie. Potom môže fungovať výber:
SELECT * FROM `aaa` WHERE '1000-01-01 09:00:00' BETWEEN `od` AND IF(`do` < `od`, DATE_ADD(`do`, INTERVAL 1 DAY), `do`) OR '1000-01-02 09:00:00' BETWEEN `od` AND IF(`do` < `od`, DATE_ADD(`do`, INTERVAL 1 DAY), `do`) ;
SELECT * FROM `aaa` WHERE '1000-01-01 09:00:00' BETWEEN `od` AND IF(`do` <= `od`, DATE_ADD(`do`, INTERVAL 1 DAY), `do`) OR '1000-01-02 09:00:00' BETWEEN `od` AND IF(`do` <= `od`, DATE_ADD(`do`, INTERVAL 1 DAY), `do`) ;
Tiskni
Sdílej: