Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/286.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP邮件-无附件不';行不通_Php_Phpmailer_Email Attachments - Fatal编程技术网

PHP邮件-无附件不';行不通

PHP邮件-无附件不';行不通,php,phpmailer,email-attachments,Php,Phpmailer,Email Attachments,我的联系页面上有这张联系表。它与附件一起正常工作。但如果没有附件文件,我会收到带有错误字符的电子邮件,例如:“.KĂrĂlbelĂl 35 oldalrĂl lenne szĂ。”我需要匈牙利语的电子邮件,charset-utf-8。我应该写在哪里? 我正在努力学习php语言,但是如果你知道我错在哪里,请告诉我。 这是我的密码: <?php $statusMsg=''; if(isset($_FILES["file"]["name"])){ $email = $_POST['emai

我的联系页面上有这张联系表。它与附件一起正常工作。但如果没有附件文件,我会收到带有错误字符的电子邮件,例如:“.KĂrĂlbelĂl 35 oldalrĂl lenne szĂ。”我需要匈牙利语的电子邮件,charset-utf-8。我应该写在哪里? 我正在努力学习php语言,但是如果你知道我错在哪里,请告诉我。 这是我的密码:

<?php
$statusMsg='';
if(isset($_FILES["file"]["name"])){
   $email = $_POST['email'];
    $name = $_POST['name'];
    $subject = $_POST['subject'];
    $message = $_POST['message'];
    $captcha;
    if(isset($_POST['g-recaptcha-response'])){
          $captcha=$_POST['g-recaptcha-response'];
        }
        if(!$captcha){
          echo '<h2>Kérjük pipáld be, hogy nem vagy robot!</h2>';
          exit;
        }
        $secretKey = "6LcsouEUAAAAAHNvPVT_dANY7m0u7yJoGT68hqhW";
        $ip = $_SERVER['REMOTE_ADDR'];
        // post request to server
        $url = 'https://www.google.com/recaptcha/api/siteverify?secret=' . urlencode($secretKey) .  '&response=' . urlencode($captcha);
        $response = file_get_contents($url);
        $responseKeys = json_decode($response,true);
        // should return JSON with success as true
        if($responseKeys["success"]) {
                echo '<h2>Köszönjük az üzenetet! Hamarosan jelentkezünk</h2>';
        } else {
                echo '<h2>You are spammer!</h2>';
        }
$fromemail =  $email;
$subject = $subject;
$email_message = '<h2>Új ajánlatkérés érkezett</h2>
                    <p><b>Név:</b> '.$name.'</p>
                    <p><b>Email:</b> '.$email.'</p>
                    <p><b>Tárgy:</b> '.$subject.'</p>
                    <p><b>Üzenet:</b><br/>'.$message.'</p>';
$email_message.="Melléklet lehet csatolva. Az üzenet az amidit.hu-n keresztül érkezett.";
$semi_rand = md5(uniqid(time()));
$headers = "From: ".$fromemail;
$mime_boundary = "==Multipart_Boundary_x{$semi_rand}x";

    $headers .= "\nMIME-Version: 1.0\n" .
    "Content-Type: multipart/mixed;\n" .
    " boundary=\"{$mime_boundary}\"";

if($_FILES["file"]["name"]!= ""){  
    $strFilesName = $_FILES["file"]["name"];  
    $strContent = chunk_split(base64_encode(file_get_contents($_FILES["file"]["tmp_name"])));  


    $email_message .= "This is a multi-part message in MIME format.\n\n" .
    "--{$mime_boundary}\n" .
     "Content-Type:text/html; charset=\"UTF-8\"\n" .
    "Content-Transfer-Encoding: 7bit\n\n" .
    $email_message .= "\n\n";


    $email_message .= "--{$mime_boundary}\n" .
    "Content-Type: application/octet-stream;\n" .
    " name=\"{$strFilesName}\"\n" .
    //"Content-Disposition: attachment;\n" .
    //" filename=\"{$fileatt_name}\"\n" .
    "Content-Transfer-Encoding: base64\n\n" .
    $strContent  .= "\n\n" .
    "--{$mime_boundary}--\n";
}
$toemail="info@amidit.hu";  

if(mail($toemail, $subject, $email_message, $headers)){
   $statusMsg= "Az üzenet küldése sikeres.";
}else{
   $statusMsg= "Az üzenetet nem sikerült elküldeni. Kérjük, próbáld meg újra.";
}
}
if ($mail_sent == true){ ?>
        <script language="javascript" type="text/javascript">
        alert('Köszönjük az üzenetet. Hamarosan jelentkezünk!');
        window.location = 'https://amidit.hu';
        </script>
    <?php } else { ?>
    <script language="javascript" type="text/javascript">
        alert('Köszönjük az üzenetet. Hamarosan jelentkezünk!');
        window.location = 'https://amidit.hu';
    </script>
    <?php
    }
   ?>


警惕(“KöszönjüK azüzenetet.Hamarosan jelentkezünk!”);
window.location=https://amidit.hu';
警惕(“KöszönjüK azüzenetet.Hamarosan jelentkezünk!”);
window.location=https://amidit.hu';
谢谢你的帮助

您可以在电子邮件标题部分添加“utf-8”,如下所示

$headers = "Content-Type: text/html; charset=UTF-8";
您可以在电子邮件标题部分添加“utf-8”,如下所示

$headers = "Content-Type: text/html; charset=UTF-8";

有几件事需要检查:

  • 确保联系人页面本身使用UTF-8
  • 那是你的 脚本是您的脚本正在使用UTF-8
  • 那个
接下来,请记住,正确构造电子邮件是非常困难的-应尽可能避免直接使用PHP
mail()
函数。取而代之的是,使用一个库,如您标记此问题的库,它将为您处理许多事情,您只需设置:

$mail->CharSet = 'utf-8';

有几件事需要检查:

  • 确保联系人页面本身使用UTF-8
  • 那是你的 脚本是您的脚本正在使用UTF-8
  • 那个
接下来,请记住,正确构造电子邮件是非常困难的-应尽可能避免直接使用PHP
mail()
函数。取而代之的是,使用一个库,如您标记此问题的库,它将为您处理许多事情,您只需设置:

$mail->CharSet = 'utf-8';

您可以在标头上添加charset=utf-8您可以在标头上添加charset=utf-8