Autor Zpráva
marqo28
Profil
Zdar,

viem že je už veľa otvorených tém na túto tému, a verte že všetky som prešiel a novú tému zakladám už po piatych hodiných hľadania. Mám tento PHP script pre odosielanie e-mailu zo stránky.

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
  <meta http-equiv="Content-Type" content="text/html; charset=windows-1250">
  <meta http-equiv="Refresh" content="4;url=email.php">
  <LINK rel="stylesheet" type="text/css" href="../styl.css">
  <title>Doručování e-mailu ...</title>
  </head>
  <body>

<?
$to = $_POST['prijemce'];
$extra = "From: $email\r\nReply-To: $email\r\n";
$subject = "PALETY-BRIKETY.sk | Predmet: ".$predmet." - od ".$meno."";
$mess = "Meno: ".$meno."\nEmail: ".$email."\nWeb: ".$web."\nTel.: ".$tel."\nText:\n".$zprava.""; 

if ($meno!="" and $email!="" and $predmet!="" and $email!="" and $zprava!="" and $spam=="2")
{
;

mail ($to, $subject, $mess, $extra); 
echo "<p>Váš e-mail bol úspešne odoslaný na adresu <strong>$prijemce</strong>.";
}
else
{
echo "<p>Váš e-mail sa<strong>nepodarilo odoslať</strong> pravdepodobně ste nevyplnili všetky údaje, alebo neviete koľko je 1 + 1.</p>";
} 
?>


  </body>
</html>


Probém je jasný. - kódovanie. Jednoducho neviem ten PHP kód nastaviť na také kódovanie, aby e-mail ktorý mi príde zobrazoval diakritiku. Neviem ako tam mám vložiť UTF-8, alebo windows-1250.

Skúšal som už všetky možné kódy a nič. Prosím, nevie niekto aký kód by tam šiel, príp. by ho upravil aby mi šlapal? Som v tom začiaočník ale rád sa učím.

P.S. Ak otváram zbytočne novú tému tak sa ospravedlňujem. Ale v žiadnej téme som nenašiel odpoď na moju otázku.
mckay
Profil
marqo28:
Tohohle si si všiml?
marqo28
Profil
Moc krát ti ďakujem za tento link. Neviem možno som to aj pozeral ale až teraz som pochopil ako to treba. Vytvoril som teda teda z tých zdrojákov tento kód a všetko ide ako má:
<?php
/* *************** diskuse.jakpsatweb.cz *** PHP FAQ ********************** */
function autoUTF($s)
{
    // detect UTF-8
    if (preg_match('#[\x80-\x{1FF}\x{2000}-\x{3FFF}]#u', $s))
        return $s;
    // detect WINDOWS-1250
    if (preg_match('#[\x7F-\x9F\xBC]#', $s))
        return iconv('WINDOWS-1250', 'UTF-8', $s);
    // assume ISO-8859-2
    return iconv('ISO-8859-2', 'UTF-8', $s);
}

function cs_mail ($to, $subject, $mess, $head = "")
       {  $subject = "=?utf-8?B?".base64_encode(autoUTF ($subject))."?=";
          $head .= "MIME-Version: 1.0\n";
          $head .= "Content-Type: text/plain; charset=\"utf-8\"\n";
          $head .= "Content-Transfer-Encoding: base64\n";
          $mess = base64_encode (autoUTF ($mess));
          return mail ($to, $subject, $mess, $head); }
/* ********************************************************************** **  */

$to = $_POST['prijemce'];
$extra = "From: $email\r\nReply-To: $email\r\n";
$subject = "PALETY-BRIKETY.sk | Predmet: ".$predmet." - od ".$meno."";
$mess = "Meno: ".$meno."\nEmail: ".$email."\nWeb: ".$web."\nTel.: ".$tel."\nText:\n".$zprava.""; 

if ($meno!="" and $email!="" and $predmet!="" and $email!="" and $zprava!="" and $spam=="2")
{
;

$kon = cs_mail ($to, $subject, $mess, $extra);
echo "<p>Váš e-mail bol úspešne odoslaný na adresu <strong>$prijemce</strong>.";
}
else
{
echo "<p>Váš e-mail sa <strong>nepodarilo odoslať</strong> pravdepodobně ste nevyplnili všetky údaje, alebo neviete koľko je 1 + 1.</p>";
} 
?>



Moc krát ďakujem za odpoveď! Ani nevieš ako si mi pomohol...
janzbudy
Profil
Ahoj ak môžeš tak mi prosím poraď ak zadať podmienku pre zablokovanie odosielania prázdnych formulárov ta diakritika mi ide v pohode ďakujem.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0