UBports, nadace a komunita kolem Ubuntu pro telefony a tablety Ubuntu Touch, vydala Ubuntu Touch 24.04-1.2 a 20.04 OTA-12.
Byla vydána (Mastodon, 𝕏) nová stabilní verze 2.0 otevřeného operačního systému pro chytré hodinky AsteroidOS (Wikipedie). Přehled novinek v oznámení o vydání a na YouTube.
WoWee je open-source klient pro MMORPG hru World of Warcraft, kompatibilní se základní verzí a rozšířeními The Burning Crusade a Wrath of the Lich King. Klient je napsaný v C++ a využívá vlastní OpenGL renderer, pro provoz vyžaduje modely, grafiku, hudbu, zvuky a další assety z originální kopie hry od Blizzardu. Zdrojový kód je na GitHubu, dostupný pod licencí MIT.
Byl představen ICT Supply Chain Security Toolbox, společný nezávazný rámec EU pro posuzování a snižování kybernetických bezpečnostních rizik v ICT dodavatelských řetězcích. Toolbox identifikuje možné rizikové scénáře ovlivňující ICT dodavatelské řetězce a na jejich podkladě nabízí koordinovaná doporučení k hodnocení a mitigaci rizik. Doporučení se dotýkají mj. podpory multi-vendor strategií a snižování závislostí na vysoce
… více »Nizozemský ministr obrany Gijs Tuinman prohlásil, že je možné stíhací letouny F-35 'jailbreaknout stejně jako iPhony', tedy upravit jejich software bez souhlasu USA nebo spolupráce s výrobcem Lockheed Martin. Tento výrok zazněl v rozhovoru na BNR Nieuwsradio, kde Tuinman naznačil, že evropské země by mohly potřebovat větší nezávislost na americké technologii. Jak by bylo jailbreak možné technicky provést pan ministr nijak nespecifikoval, nicméně je známé, že izraelské letectvo ve svých modifikovaných stíhačkách F-35 používá vlastní software.
Nové číslo časopisu Raspberry Pi zdarma ke čtení: Raspberry Pi Official Magazine 162 (pdf).
Sdružení CZ.NIC, správce české národní domény, zveřejnilo Domain Report za rok 2025 s klíčovými daty o vývoji domény .CZ. Na konci roku 2025 bylo v registru české národní domény celkem 1 515 860 s koncovkou .CZ. Průměrně bylo měsíčně zaregistrováno 16 222 domén, přičemž nejvíce registrací proběhlo v lednu (18 722) a nejméně pak v červnu (14 559). Podíl domén zabezpečených pomocí technologie DNSSEC se po několika letech stagnace výrazně
… více »Google představil telefon Pixel 10a. S funkci Satelitní SOS, která vás spojí se záchrannými složkami i v místech bez signálu Wi-Fi nebo mobilní sítě. Cena telefonu je od 13 290 Kč.
Byl publikován přehled dění a novinek z vývoje Asahi Linuxu, tj. Linuxu pro Apple Silicon. Fedora 43 Asahi Remix s KDE Plasma už funguje na M3. Zatím ale bez GPU akcelerace. Vývojáře lze podpořit na Open Collective a GitHub Sponsors.
Red Hat představil nový nástroj Digital Sovereignty Readiness Assessment (GitHub), který organizacím umožní vyhodnotit jejich aktuální schopnosti v oblasti digitální suverenity a nastavit strategii pro nezávislé a bezpečné řízení IT prostředí.
$email_from = "odkoho@domena.cz"; // Od koho je e-mail
$email_from_name = "OD KOHO"; // Od koho je e-mail (název společnosti)
$clearsubject = "Potvrzení objednávky";
$encodedsubject = base64_encode ($clearsubject);
$subject = "=?iso-8859-2?B?$encodedsubject?=";
$email_message = "
Vážený zákazníku,
na základě telefonické domluvy a tak dále"; // Tělo zprávy e-mailu
$email_to = "<$komu>"; // Komu má být e-mail poslán
$headers = "From: " . $email_from_name . "<" . $email_from . ">";
$semi_rand = md5(time());
$mime_boundary = "==Multipart_Boundary_x{$semi_rand}x";
$email .= "\nMIME-Version: 1.0\n" .
"Content-Type: multipart/mixed;\n" .
" boundary=\"{$mime_boundary}\"";
$headers .= "\nX-Sender: odkoho@domena.cz";
$headers .= "\nReply-To: odkoho@domena.cz";
$headers .= "\nX-Mailer: PHP";
$headers .= "\nX-Priority: 3";
$email_message .= "\nThis is a multi-part message in MIME format.\n\n" .
"--{$mime_boundary}\n" .
"Content-Type:text/html; charset=\"iso-8859-2\"\n" .
"Content-Transfer-Encoding: 7bit\n\n" .
$email_message . "\n\n";
/********************************************** Příloha ********************************************/
$fileatt = "Exkluzivni_nabidka.doc"; // Cesta k souboru
$fileatt_type = "application/msword"; // Typ souboru
$fileatt_name = "Exkluzivni_nabidka.doc"; // Název souboru připojeného k e-mailu v příloze
$file = fopen($fileatt,'rb');
$data = fread($file,filesize($fileatt));
fclose($file);
$data = chunk_split(base64_encode($data));
$email_message .= "--{$mime_boundary}\n" .
"Content-Type: {$fileatt_type};\n" .
" name=\"{$fileatt_name}\"\n" .
"Content-Disposition: attachment;\n" .
" filename=\"{$fileatt_name}-1\"\n" .
"Content-Transfer-Encoding: base64\n\n" .
$data . "\n\n"
$email_message .= "--{$mime_boundary}\n" .
"Content-Type: {$fileatt_type};\n" .
" name=\"{$fileatt_name}\"\n" .
"Content-Disposition: attachment;\n" .
" filename=\"{$fileatt_name}-2\"\n" .
"Content-Transfer-Encoding: base64\n\n" .
$data . "\n\n" .
"--{$mime_boundary}--\n";
unset($data);
unset($file);
unset($fileatt);
unset($fileatt_type);
unset($fileatt_name);
/********************************************** Konec konfigurace přílohy ********************************************/
# samotný příkaz k odeslání e-mailu
$ok = @mail($email_to, $email_subject, $email_message, $headers);
From: "…" <mail@example.com> To: <me@example.com> Subject: =?windows-1250?Q?Test?= MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="----=_NextPart_000_01CC_01C7FAC3.59064BA0" This is a multi-part message in MIME format. ------=_NextPart_000_01CC_01C7FAC3.59064BA0 Content-Type: text/plain; charset="iso-8859-2" Content-Transfer-Encoding: quoted-printable Posilame vam prima spam. ------=_NextPart_000_01CC_01C7FAC3.59064BA0 Content-Type: application/pdf; name="spam.PDF" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="spam.PDF" JVBERi0xLjQKJcfsj6IKNSAwIG9iago8PC9MZW5ndGggNiAwIFIvRmlsdGVyIC9GbGF0ZURlY29k … NT5dCj4+CnN0YXJ0eHJlZgo1MDIyMgolJUVPRgo= ------=_NextPart_000_01CC_01C7FAC3.59064BA0 Content-Type: application/ms-word; name="spam.doc" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="spam.doc" JVBERi0xLjQKJcfsj6IKNSAwIG9iago8PC9MZW5ndGggNiAwIFIvRmlsdGVyIC9GbGF0ZURlY29k … NT5dCj4+CnN0YXJ0eHJlZgo1MDIyMgolJUVPRgo= ------=_NextPart_000_01CC_01C7FAC3.59064BA0--Prázdný řádek je tam vždy jen jeden, zdvojuje jej asi redakční systém Abíčka.
tady byla hlavicka (publikacni system abclinuxu mi ji nepovolil vlozit)
pak je tady text mailu
This is a multi-part message in MIME format.
--==Multipart_Boundary_xbd2d9e7421466c5d3fa601b7f6be4967x
Content-Type:text/html; charset="utf-8"
Content-Transfer-Encoding: 8bit
text mailu je tady znova
--==Multipart_Boundary_xbd2d9e7421466c5d3fa601b7f6be4967x
Content-Type: application/pdf;
name="priloha2.pdf"
Content-Disposition: attachment;
filename="priloha2.pdf-2"
Content-Transfer-Encoding: base64
tady byl kod PDFKa
--==Multipart_Boundary_xbd2d9e7421466c5d3fa601b7f6be4967x--
priloha2.pdf-2. Ta první "příloha" je přímo text e-mailu v HTML, který zobrazí rovnou klient (pokud nemá nastavenu preferenci plaintextu). Zda to bude klient interpretovat jako "tělo" e-mailu nebo jako přílohu určuje hlavička Content-Disposition: attachment (resp. Content-Disposition: inline). Není chyba ve vašem PHP kódu, že byste si první přílohu přepsal (místo přidávání k řetězci byste jej nahradil)?
Mimochodem, pokud vkládáte do diskuze nějaký kód, použijte tag <pre class="kod">, zjednodušíte si práci s formátováním a bude to lépe čitelné. Znaky < a > v textu musíte nahradit HTML entitami < a > – nad editačním boxem jsou tlačítka, která pomocí javascriptu ty znaky vloží.
$idobjednavky = date("dmY / Hi");
$contentType = $_FILES['priloha']['type'];
$pripona = substr($contentType, strpos($contentType, "/") +1);
$name = date(YmdHis);
$contentType2 = $_FILES['priloha2']['type'];
$pripona2 = substr($contentType2, strpos($contentType2, "/") +1);
$contentType3 = $_FILES['priloha3']['type'];
$pripona3 = substr($contentType3, strpos($contentType3, "/") +1);
$contentType4 = $_FILES['priloha4']['type'];
$pripona4 = substr($contentType4, strpos($contentType4, "/") +1);
if ($_FILES ['priloha']): $upload = move_uploaded_file ($_FILES ['priloha'] ['tmp_name'], "priloha/$name.$pripona"); endif;
if ($_FILES ['priloha2']): $upload = move_uploaded_file ($_FILES ['priloha2'] ['tmp_name'], "priloha2/$name.$pripona2"); endif;
if ($_FILES ['priloha3']): $upload = move_uploaded_file ($_FILES ['priloha3'] ['tmp_name'], "priloha3/$name.$pripona3"); endif;
if ($_FILES ['priloha4']): $upload = move_uploaded_file ($_FILES ['priloha4'] ['tmp_name'], "priloha4/$name.$pripona4"); endif;
$email_from = "od@koho.cz"; // Od koho je e-mail
$email_from_name = "název firmy"; // Od koho je e-mail (název společnosti)
$semi_rand = md5(time());
$mime_boundary = "==Multipart_Boundary_x{$semi_rand}x";
$email_message = "\nThis is a multi-part message in MIME format.\n\n" .
"--{$mime_boundary}\n" .
"Content-Type:text/html; charset=\"utf-8\"\n" .
"Content-Transfer-Encoding: 8bit\n\n" .
$email_message . "\n\n";
$email_message .= "
\n
tady je text zpravy
"; // Tělo zprávy e-mailu
$email_to = "jmeno@komuposlatmail.cz"; // Komu má být e-mail poslán
$headers = "From: " . $email_from_name . "<" . $email_from . ">";
$headers .= "\nMIME-Version: 1.0\n" .
"Content-Type: multipart/mixed;\n" .
" boundary=\"{$mime_boundary}\"";
$headers .= "\nX-Sender: jmeno@domena.cz";
$headers .= "\nReply-To: jmeno@domena.cz";
$headers .= "\nX-Mailer: PHP";
$headers .= "\nX-Priority: 3";
$subject = "Předmět zprávy (číslo - $idobjednavky)";
$charset='utf-8';
$encoded_subject="=?$charset?B?".base64_encode($subject)."?=\n";
/********************************************** Přílohy ********************************************/
if($_FILES["priloha"]["name"] <> ""):
$fileatt = "priloha/$name.$pripona"; // Cesta k souboru
$fileatt_type = "$contentType"; // Typ souboru
$fileatt_name = $_FILES["priloha"]["name"]; // Název souboru připojeného k e-mailu v příloze
$file = fopen($fileatt,'rb');
$data = fread($file,filesize($fileatt));
fclose($file);
$data = chunk_split(base64_encode($data));
$email_message .= "--{$mime_boundary}\n" .
"Content-Type: {$fileatt_type};\n" .
" name=\"{$fileatt_name}\"\n" .
"Content-Disposition: attachment;\n" .
" filename=\"{$fileatt_name}\"\n" .
"Content-Transfer-Encoding: base64\n\n" .
$data . "\n\n";
endif;
if($_FILES["priloha2"]["name"] <> ""):
$fileatt2 = "priloha2/$name.$pripona2"; // Cesta k souboru
$fileatt_type2 = "$contentType2"; // Typ souboru
$fileatt_name2 = $_FILES["priloha2"]["name"]; // Název souboru připojeného k e-mailu v příloze
$file2 = fopen($fileatt2,'rb');
$data2 = fread($file2,filesize($fileatt2));
fclose($file2);
$data2 = chunk_split(base64_encode($data2));
$email_message .= "--{$mime_boundary}\n" .
"Content-Type: {$fileatt_type2};\n" .
" name=\"{$fileatt_name2}\"\n" .
"Content-Disposition: attachment;\n" .
" filename=\"{$fileatt_name2}\"\n" .
"Content-Transfer-Encoding: base64\n\n" .
$data2 . "\n\n";
endif;
if($_FILES["priloha3"]["name"] <> ""):
$fileatt3 = "priloha3/$name.$pripona3"; // Cesta k souboru
$fileatt_type3 = "$contentType3"; // Typ souboru
$fileatt_name3 = $_FILES["priloha3"]["name"]; // Název souboru připojeného k e-mailu v příloze
$file3 = fopen($fileatt3,'rb');
$data3 = fread($file3,filesize($fileatt3));
fclose($file3);
$data3 = chunk_split(base64_encode($data3));
$email_message .= "--{$mime_boundary}\n" .
"Content-Type: {$fileatt_type3};\n" .
" name=\"{$fileatt_name3}\"\n" .
"Content-Disposition: attachment;\n" .
" filename=\"{$fileatt_name3}\"\n" .
"Content-Transfer-Encoding: base64\n\n" .
$data3 . "\n\n";
endif;
if($_FILES["priloha4"]["name"] <> ""):
$fileatt4 = "priloha4/$name.$pripona4"; // Cesta k souboru
$fileatt_type4 = "$contentType4"; // Typ souboru
$fileatt_name4 = $_FILES["priloha4"]["name"]; // Název souboru připojeného k e-mailu v příloze
$file4 = fopen($fileatt4,'rb');
$data4 = fread($file4,filesize($fileatt4));
fclose($file4);
$data4 = chunk_split(base64_encode($data4));
$email_message .= "--{$mime_boundary}\n" .
"Content-Type: {$fileatt_type4};\n" .
" name=\"{$fileatt_name4}\"\n" .
"Content-Disposition: attachment;\n" .
" filename=\"{$fileatt_name4}\"\n" .
"Content-Transfer-Encoding: base64\n\n" .
$data4 . "\n\n";
endif;
$email_message.= "--{$mime_boundary}--\n";
/********************************************** Konec konfigurace příloh ********************************************/
# samotný příkaz k odeslání e-mailu
$ok = @mail($email_to, $encoded_subject, $email_message, $headers);
//FUNKCE pro odeslani mailu s prilozenym souborem
//-------------------------------------------------
//$email_address = "Recievers email";
//$email_from = "Senders email";
//$subject = "Any subject you like!";
//$msg = "Text message shown in email";
//$attach_filepath = "path to existing picture files. Should be an array!";
//-------------------------------------------------
function xmail($email_address,$email_from,$subject,$msg,$attach_filepath)
{
$b = 0;
$mail_attached = "";
$boundary = md5(uniqid(time(),1))."_xmail";
if (count($attach_filepath)>0)
{
for ($a=0;$a < count($attach_filepath);$a++)
{
if ($fp = fopen($attach_filepath[$a],"rb"))
{
$file_name = basename($attach_filepath[$a]);
$content[$b] = fread($fp,filesize($attach_filepath[$a]));
$mail_attached .= "--".$boundary."\r\n".
"Content-Type: image/jpeg; name=\"$file_name\"\r\n".
"Content-Transfer-Encoding: base64\r\n".
"Content-Disposition: inline; filename=\"$file_name\"\r\n\r\n".
chunk_split(base64_encode($content[$b]))."\r\n";
$b++;
fclose($fp);
}
// else echo "NE";
}
$mail_attached .= "--".$boundary." \r\n";
$add_header ="MIME-Version: 1.0\r\nContent-Type: multipart/mixed; boundary=\"$boundary\"";
$mail_content = "--".$boundary."\r\n".
"Content-Type: text/plain; charset=iso-8859-1; format=flowed\r\n".
"Content-Transfer-Encoding: 8bit\r\n\r\n".
$msg."\r\n\r\n".$mail_attached;
return mail($email_address,$subject,$mail_content,"From: ".$email_from."\r\n".$add_header);
}
else return mail($email_address,$subject,$msg,"From: ".$email_from);
}
Tiskni
Sdílej: