CreepyLink.com je nový zkracovač URL adres, 'díky kterému budou vaše odkazy vypadat tak podezřele, jak je to jen možné'. Například odkaz na abclinuxu.cz tento zkracovač převádí do podoby 'https://netflix.web-safe.link/logger_8oIlgs_free_money.php'. Dle prohlášení autora je CreepyLink alternativou ke zkracovači ShadyURL (repozitář na githubu), který dnes již bohužel není v provozu.
Na blogu Raspberry Pi byla představena rozšiřující deska Raspberry Pi AI HAT+ 2 s akcelerátorem Hailo-10 a 8 GB RAM. Na rozdíl od předchozí Raspberry Pi AI HAT+ podporuje generativní AI. Cena desky je 130 dolarů.
Wikipedie slaví 25. výročí svého založení. Vznikla 15. ledna 2001 jako doplňkový projekt k dnes již neexistující encyklopedii Nupedia. Doména wikipedia.org byla zaregistrována 12. ledna 2001. Zítra proběhne v Praze Večer svobodné kultury, který pořádá spolek Wikimedia ČR.
Po více než dvou letech od vydání předchozí verze 2.12 byla vydána nová stabilní verze 2.14 systémového zavaděče GNU GRUB (GRand Unified Bootloader, Wikipedie). Přehled novinek v souboru NEWS a v aktualizované dokumentaci.
Google Chrome 144 byl prohlášen za stabilní. Nejnovější stabilní verze 144.0.7559.59 přináší řadu novinek z hlediska uživatelů i vývojářů. Podrobný přehled v poznámkách k vydání. Opraveno bylo 10 bezpečnostních chyb. Vylepšeny byly také nástroje pro vývojáře (YouTube).
Microsoft zveřejnil zdrojový kód XAML Studia a uvolnil ho pod MIT licencí. XAML Studio je nástroj ze světa Windows, určený pro tvorbu uživatelského rozhraní aplikací pomocí XAML (Extensible Application Markup Language). Stalo se tak zhruba po osmi letech od prvního prohlášení Microsoftu, že se tento kód chystá zveřejnit.
TimeCapsule, 'časová kapsle', je jazykový model trénovaný výhradně na datech z určitých míst a časových období, aby se tak napodobila autentická slovní zásoba, způsob vyjadřování a názory dané doby. Na Hugging face jsou k dispozici modely natrénované na historických textech dostupných v oblasti Londýna mezi lety 1800 až 1875.
Radicle byl vydán ve verzi 1.6.0 s kódovým jménem Amaryllis. Jedná se o distribuovanou alternativu k softwarům pro spolupráci jako např. GitLab.
Zemřel Scott Adams, tvůrce komiksových stripů Dilbert parodujících pracovní prostředí velké firmy.
Sdružení CZ.NIC vydalo novou verzi Knot Resolveru (6.1.0). Jedná se o první vydanou stabilní verzi 6, která je nyní oficiálně preferovanou a doporučovanou verzí, namísto předešlé verze 5. Více o Knot Resolveru 6 je možné se dočíst přímo v dokumentaci.
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: