KDE slaví 30 let. Přesně před 30 lety, 14. října 1996, poslal Matthias Ettrich do diskusní skupiny comp.os.linux.misc zprávu, která započala historii projektu KDE. Důležité milníky jsou zobrazeny na časové ose.
Byl vydán Mozilla Firefox 158.0. Stejně jako Chrome 155 s podporou JPEG XL (test). Přehled novinek v poznámkách k vydání a poznámkách k vydání pro vývojáře. Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 158 bude brzy k dispozici také na Flathubu a Snapcraftu.
Svobodný kancelářský balík ONLYOFFICE (Wikipedie) byl vydán ve verzi 10.0. Jak online Docs, tak i offline Desktop Editors. Přehled novinek také na YouTube.
Mozilla představuje Firefox Enterprise určený jako podnikový prohlížeč pro organizace s přísnými požadavky na bezpečnost, správu a dodržování předpisů. S profesionální podporou. Dostupný je zatím ve Francii, Německu, Rakousku a Švýcarsku.
Kybernetický útok zasáhl nejméně 150 supermarketů Intermarché a několik prodejen řetězců Leclerc a Coopérative U. Chladicí jednotky napadených obchodních domů byly nastaveny na nepřetržité odmrazování a teplota v nich mnohdy vystouala až nad 50°C. Škody napáchané na chlazeném a mraženém zboží budou patrně dosahovat miliónů eur.
… více »Stát Kalifornie zažaloval výrobce 3D tiskových filamentů Polymaker. Vrchní soud San Diego County tvrdí, že firma propagací svých výrobků mezi příznivci 3D tištěných zbraní podporovala výrobu takzvaných 'ghost guns' (DIY zbraní) a že její PLA filament pro 3D tiskárny lze za těchto okolností považovat za součást určenou k výrobě střelné zbraně. Žaloba požaduje mimo jiné finanční sankce a soudní zákaz činnosti, Polymaker se hájí tím, že filament je běžný a sám o sobě legální produkt. Celý text žaloby (PDF na Google Drive).
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 »Dobrý deň, mám problém s ktorým si neviem rady.
Mám skript, kde je niekoľko premenných ($PREM1, $PREM2, $PREM3). A teraz potrebujem poslat názov tejto premennej cez $_GET["premenna"].
Asi je to dost nezrozumitelné, tak napíšem čo presne potrebujem.
Otvorím stranku: http://skript.php?premenna=$PREM1
v skripte vyberiem premennu cez $_GET["premenna"], a zistím ci sa jej obsah rovná "1"
Niečo ako: if ($_GET["premenna"] == "1") {...}
Dúfam že ma aspoň niekto pochopí, asi je to divné riešenie, ale ináč si to neviem predstaviť, niesom profík, som iba samouk...
Dík za rady...
Jednou jsem to také potřeboval, je to popsáno v jednom komentáři v dokumentaci. Bohužel je to dost prasácké, proto jsem se radši vydal jinou cestou.
if (isset($_GET['premenna']))
{
$premenna = $_GET['premenna'];
if ($premenna == $PREM1) { ... }
elseif ($premenna == $PREM2) { ...}
...
else { ... }
}
aha, opravdu nazev promenne. vazne to nejde jinak? par veci uz jsem napsal a zatim jsem se bez takoveho reseni obesel ... opravdu to nejde?
co napriklad pouzit switch a na zaklade hodnoty $promenna resp. $_GET['promenna'] vyvolat prislusne akce?
a jak uz jsem psal nize; pokud pouzivas promenne, tak to predelej. je to vec, ktera by mela byt vsude vypnuta a napr. v PHP6 bude odebrana (3x hura), v PHP5 je snad vypnuta v zakladni konfiguraci.
jeste doporucim pouzivat if (isset($_GET['promenna']) ... ) { ... }. vyhnes se tak chybe, kdyz nebude $promenna v $_GET nastavena. je samozrejme vhodne osetrit, jak se v takovem pripade zachovat.
taky dost dobre nechapu k cemu by to bylo dobre, posilat si nazev promenne a ne jeji hodnotu.. muzete to trochu popsat?
$GLOBALS ???
<?php
$prem1 = 10;
$prem2 = 20;
$prem3 = 30;
echo ${$_GET['premenna']};
// -> http://host/skript.php?premenna=prem1
?>
Ale neni prilis dobry napad umoznit uzivateli takto "nakukovat" (ci hure, zapisovat) prakticky do libovolne promenne. Jestli si nepisete nejaky debugovaci (ci jaky) nastroj ciste pro sebe, tak bych doporucoval pouzit zmineny switch (nebo lepe pole se jmeny validnich promennych) a striktne vymezit k jakym promenny lze takto pristupovat.
Akosi som nepochopil čo sa Marollo pýtal, ale tvoje riešenie by ma zaujímalo. Ako napísať napríklad automatické presmerovanie inak ako cez GET z adresy?
Napríklad toto:
header("location:http://".$_SERVER["SERVER_NAME"]."/subor.php?nazov_premennej=$hodnota_premennej")
Neviem ako. Prepíš moje location tak, aby v adrese nebola priamo uvedená premenná.
method="post", nebo pres HTTP header.
$_GET nelibi. Posilat akce pres $_POST? GL & HF!
$get_str = '';
$sep = '?';
foreach($_GET as $k => $v) {
$get_str .= $sep.urlencode($k).'='.urlencode($v);
$sep = '&';
}
header("Location: http://".$_SERVER['SERVER_NAME'].'/soubor.php'.$get_str);
Nebo třeba takto:
header('Location: http://".$_SERVER['SERVER_NAME'].'/soubor.php?'
.join('&', array_map(sprintf,
array_pad(array(), '%s=%s', count($_GET))
array_map('urlencode', array_keys($_GET)),
array_map('urlencode', $_GET))
);
(Asi to bude trosku pomalejší než ten první kousek kódu, ale je to hezčí
)
header('Location: http://".$_SERVER['SERVER_NAME'].'/soubor.php'
.preg_replace('/^[^?]*/', '', $_SERVER['REQUEST_URI']));
Tenhle kousek je asi vůbec nejhezčí.
Ja v php nie som ešte celkom doma a preto nad mojím dotazom možno budete krútiť hlavou, ale kde je v tejto hlavičke nazov_premennej a hodnota_premennej?
A nebo ještě takto:
header('Location: http://".$_SERVER['SERVER_NAME'].'/soubor.php?'.$_SERVER['QUERY_STRING']);
Tenhle kousek je asi vůbec nejhezčí.
ono by se docela hodilo, kdyby uz konecne reagoval marallo jakozto autor.. Takto nikdo nevime co vlastne chce ;] a jestli uz je s nejakym navrhnutym resenim spokojen..
Ospravedlňujem sa že reagujem až teraz, ale viete, boli vianoce, stres, panika...
Takže vidím že ste moc nepochopili čo potrebujem, a niektore z vašich príspevkov som ani ja nepochopil.
Mám blog, v databáze v jednej tabuľke všetky zápisky. Tieto majú rôzne kategórie (linux, ženy, komunicticke_kecy, fasisticke_kecy). Pri písaní zápiskov označím do ktorých kategórii zápisok patrí. (môže patriť napríklad do kategórii zeny, a fasisticke_kecy). Takže v tabuľke v databázi mám pre každú kategóriu stĺpec, a ak je v ňom "1", tak zápisok patrí do tejto kategórie.
Mám spravený PHP kód že pre každý riadok tabuľky spraví niečo ako:
if ( $tag_linux == 1 ) {
echo vypíš článok;}
A ja teraz potrebujem z menu poslať to $tag_linux, aby skript vedel akú kategóriu ma vypísať. Zatial mám pre každú kategóriu inú stránku, ale to je na houby. Iné riešenie ma nenapadá. Dúfam že už je to jasnejšie...
Dík za dalšie rady...
SELECT c.* FROM (clanky c, clanky_kategorie ck) WHERE c.id_clanky = ck.id_clanky AND ck.id_kategorie = $id_kategorie AND c.datum < NOW() ORDER BY c.datum DESCSeznam všech článků s názvem jejich kategorií třeba takto:
SELECT c.*, GROUP_CONCAT(k.nazev SEPARATOR ', ') AS nazev_kategorie FROM (clanky c, clanky_kategorie ck, kategorie k) WHERE c.id_clanky = ck.id_clanky AND ck.id_kategorie = k.id_kategorie AND c.datum < NOW() GROUP BY c.id_clanky ORDER BY c.datumNetestoval jsem to, ale mělo by to fungovat.
Mrkni se na první příspěvek (ten můj
), myslím, že je to opravdu to, co chceš. Ta funkce v odkazovaném komentáři vrátí jméno proměnné, která je mu předána. A to jméno pak můžeš vesele používat.
Příklad (definici té funkce sem psát nebudu);
$testovaci_promenna = "foo"; $jmeno = vname($testovaci_promenna); echo $jmeno;
Vypíše "testovaci_promenna" (samozřejmě bez uvozovek).
Ako vidíš, je viacero riešení. Ja by som navrhoval len jednu tabuľku (id, článok, kategoria1, kategoria2, kategoria3...) a potom menu by bola priamo zadaná premenná ktorá by bola ako kľúč pre výber článkov z databázi. Podobné návody nájdeš v základných manuáloch.
A z menu daj odkaz napríklad <a href=subor.php?nazov_premennej=hodnota_premennej>. Hodnotu premennej v subor.php dostaneš cez GET.
V tvojom pripade:
$tag = $_GET["$hodnota_premennej"];
pripojenie databázy;
výber tabuľky;
výpis z tabuľky pre $tag == 1
Když neumíš programovat/sql, neuč to o statní... Marallo - použij to co radí J.K., to je totiž funkční a použitelné řešení. Když budeš hledat informace o tom co to vlastně je, tak hledej SQL a vazba N:M.
Možno to neviem, som len začiatočník, ale tak isto ako som to popísal tu, nájdeš aj v návodoch a manuáloch a z praxe viem, že to funguje 
A mimochodom Tarmaq v podstate napísal také isté riešenie. Takže nechcem dávať rozumy hlavám ako ty, ale najjednoduchšie riešenie býva najlepšie.
A este jedna pripomienka.
Marallo sa pýtal ako to tam dostať z menu, nie ako sa robí výpis z tabuľky.
Tri tabuľky ako píše JK sú OK, ale i tak by pre to čo požaduje Marollo postačovala jedna tabuľka. Veď chce len zopár stabilných kategórií. Netreba hneď robiť stránku ako internetový obchod. To je ako dávať do auta motor z tanku...
Tabulku mas udelanou spatne, jak tu psali ostatni (dobre to popsal josef Kufner).
Pokud presto chces zachovat stavajici schema, k reseni stejne nepotrebujes znat nazev promenne.. k cemu to je dobre nedokazu pochopit ani ted.
Ja bych to udelal nasledovne:
$nazev_kategorie = $_GET['cat'];
$q = db_query("SELECT * FROM clanky WHERE ".$nazev_sloupce." = 1");
Pokud nechces, aby uzivatel videl v url nazev sloupce, tak si muzes udelat nejake pole aliasu. Napr:
$categories = array(
'1' => 'linux',
'2' => 'zeny',
'3' => 'kscm',
'4' => 'ss'
);
$nazev_sloupce = $categories[$_GET['cat']];
$q = db_query("SELECT * FROM clanky WHERE ".$nazev_sloupce." = 1");
Jak vidis, zadne ifovani netreba..
jo jinak ted kdyz to po sobe ctu tak tam vidim chybku.. ten prvni radek ma byt samozrejme
$nazev_sloupce = $_GET['cat'];
Díky moc, presne to som potreboval.
Už je to vyriešené, nevedel som že sa to dá spraviť tak jednoducho.
A pre všetkých: takáto tabuľka mi plne vyhovuje...
Tiskni
Sdílej: