Microsoft zveřejnil na GitHubu zdrojové kódy MS-DOSu 4.0 pod licencí MIT. Ve stejném repozitáři se nacházejí i před lety zveřejněné zdrojové k kódy MS-DOSu 1.25 a 2.0.
Canonical vydal (email, blog, YouTube) Ubuntu 24.04 LTS Noble Numbat. Přehled novinek v poznámkách k vydání a také příspěvcích na blogu: novinky v desktopu a novinky v bezpečnosti. Vydány byly také oficiální deriváty Edubuntu, Kubuntu, Lubuntu, Ubuntu Budgie, Ubuntu Cinnamon, Ubuntu Kylin, Ubuntu MATE, Ubuntu Studio, Ubuntu Unity a Xubuntu. Jedná se o 10. LTS verzi.
Na YouTube je k dispozici videozáznam z včerejšího Czech Open Source Policy Forum 2024.
Fossil (Wikipedie) byl vydán ve verzi 2.24. Jedná se o distribuovaný systém správy verzí propojený se správou chyb, wiki stránek a blogů s integrovaným webovým rozhraním. Vše běží z jednoho jediného spustitelného souboru a uloženo je v SQLite databázi.
Byla vydána nová stabilní verze 6.7 webového prohlížeče Vivaldi (Wikipedie). Postavena je na Chromiu 124. Přehled novinek i s náhledy v příspěvku na blogu. Vypíchnout lze Spořič paměti (Memory Saver) automaticky hibernující karty, které nebyly nějakou dobu používány nebo vylepšené Odběry (Feed Reader).
OpenJS Foundation, oficiální projekt konsorcia Linux Foundation, oznámila vydání verze 22 otevřeného multiplatformního prostředí pro vývoj a běh síťových aplikací napsaných v JavaScriptu Node.js (Wikipedie). V říjnu se verze 22 stane novou aktivní LTS verzí. Podpora je plánována do dubna 2027.
Byla vydána verze 8.2 open source virtualizační platformy Proxmox VE (Proxmox Virtual Environment, Wikipedie) založené na Debianu. Přehled novinek v poznámkách k vydání a v informačním videu. Zdůrazněn je průvodce migrací hostů z VMware ESXi do Proxmoxu.
R (Wikipedie), programovací jazyk a prostředí určené pro statistickou analýzu dat a jejich grafické zobrazení, bylo vydáno ve verzi 4.4.0. Její kódové jméno je Puppy Cup.
IBM kupuje společnost HashiCorp (Terraform, Packer, Vault, Boundary, Consul, Nomad, Waypoint, Vagrant, …) za 6,4 miliardy dolarů, tj. 35 dolarů za akcii.
Byl vydán TrueNAS SCALE 24.04 “Dragonfish”. Přehled novinek této open source storage platformy postavené na Debianu v poznámkách k vydání.
ahoj, da se to celkem dobre ohnout pro tve potreby. Uzivatel zada sve jmeno a heslo. Po overeni idetity uzivatele (ma spravne jmeno a heslo), vytahnes id tohoto uzivatele z db. To ulozis do session promenne: $_SESSION['id'] = $uzivatelovo_id;
pak v tabulce clanky budes mit sloupec ve kterem budes mit ulozena id uzivatelu kteri se na ni budou moct podivat. kdyz si ji pak uzivate bude chtit zobrazit, posle tvuj skript dotaz do db: select * where (nadpis LIKE 'bla' and allowed_user = '{$_SESSION['id']}');
. Pokud bude mit kazdy uzivatel pristup k pouze sve strance a mimo prihlasovaci nebude moci k zadne sdilene, muzes udelat sloupec allowed_user jako int(tinyint - podle toho co se ti bude hodit). V pripade, ze chces mit nejake stranky, ke kterym bude mit vice (pouze) prihlasenych uzivatelu pristup, udelej sloupec allowed_user treba varchar a v nem, idcka povolenych uzivatelu oddelenych mezerama. Pak dotaz uprav takto: select * where (nadpis LIKE 'bla' and allowed_user = '% {$id} %);
predpokaladam takoveto tabulky:
uzivatele: +----+-------+-------+ | id | jmeno | heslo | | 1 | franta| neco | | 2 | jarda | neco1 | +----+-------+-------+ clanky: +----------------------------+-------------------+ | id | nadpis | allowed_user | obsah_clanku | | 1 | clanek1| 1 | ja sem clanek | | 2 | bla | 2 | blablablablablabla| +----+--------+--------------+-------------------+ps: nejsem php programator a rozhodne ne zkuseny, takze netvrdim, ze je to nejlepsi zpusob jak to udelat, ale myslim ze to muze fungovat
A co normalizace databáze?
(o hashování hesel ani nemluvím)
Sice jsem tak taky začínal, ale udivuje mě, když se každý, kdo umí nainstalovat MySQL a PHPmyadmina, tváří jako databázový analytik
Tak to OK, došel jsem k
varchar a v nem, idcka povolenych uzivatelu oddelenych mezerama.
a pak už jsem neměl chuť číst to dál.
Nejde o nějaké akademické lpjení na normalizovaných datech, ale i z čistě praktických důvodů je lepší udělat samostatnou tabulku, která nahradí ten varchar sloupeček, pomocí níž vyjádříme vazbu 1:N (jeden objekt a N subjektů, které k němu smějí přistupovat).
Nebude ta vazba M:N?Jo, bude, nějak jsem se soustředil na to, že k jednomu objektu bude mít práva
n
subjektů, ale samozřejmě, že jeden subjekt může mít i práva k m
objektům.
Cizí klíče se rozumí snad samo sebou, jinak by to nebyla relační DB, ale jen primitivní wrapper nad souborovým systémem PHPčkař pak narazí, protože mu záznamy s vazbou nepůjdou smazat a hodí mu to chybu, což bude muset řešit nastavením kaskády na delete v DB (případně zase tím ručním procházením a mazáním).
//Connect to database
mysql_connect ( $dbhost, $dbuser, $dbpass)or die("Could not connect: ".mysql_error());
mysql_select_db($dbname) or die(mysql_error());
session_start();
$username = $_POST['username'];
$password = md5($_POST['password']);
$query = "select * from users where username='$username' and password='$password'";
$result = mysql_query($query);
if (mysql_num_rows($result)!=1) {
$error="bad login";
include "login.html";
}
elseif ($username==test and "password= $password") {
include "uzivatel/u.php";
}
elseif ($username==test1 and "password= $password") {
include "uzivatel1/u1.php";
}
elseif ($username==test2 and "password= $password") {
include "uzivatel2/u2.php";
}
else { }
>
Obsah souboru register.php je nsledujici:
//Database Information
$dbhost = "localhost";
$dbname = "test";
$dbuser = "root";
$dbpass = "root";
//Connect to database
mysql_connect( $dbhost, $dbuser, $dbpass)or die("Could not connect: ".mysql_error());
mysql_select_db($dbname) or die(mysql_error());
$name = $_POST['name'];
$email = $_POST['email'];
$username = $_POST['username'];
$password = md5($_POST['password']);
// lets check to see if the username already exists
$checkuser = mysql_query("SELECT username FROM users WHERE username='$username'");
$username_exist = mysql_num_rows($checkuser);
if($username_exist > 0){
echo "I'm sorry but the username you specified has already been taken. Please pick another one.";
unset($username);
include 'register.html';
exit();
}
// lf no errors present with the username
// use a query to insert the data into the database.
$query = "INSERT INTO users (name, email, username, password)
VALUES('$name', '$email', '$username', '$password')";
mysql_query($query) or die(mysql_error());
mysql_close();
echo "You have successfully Registered";
Vim ze toto reseni neni mocdobre ale jine jsem nedokazal vymyslet. Nyni resim to, aby uzivatele nemohli obejit logovaci formular a dostat se primo na svoji stranku. Co se tyce vyse uvedeneho kodu prosim o pripadnou kritiku nebo vylepseni, budu za ne vdecny. Diky Zdenek
Tiskni Sdílej: