2017-12-09 5 views
-2

私は他の質問で解決策を見つけようとしましたが、成功しませんでした。 ユーザーがフォームを送信すると、出力が送信され、出力がMySQL databaseに保存されます。PHPのメールでデータベースに保存する

は、これは私のコードです:

<?php  
    if(isset($_POST['submit2'])){ 
     // Get the submitted form data 
     $email = $_POST['email']; 
     $name = $_POST['name']; 

     // Check whether submitted data is not empty 
     if(!empty($name) && !empty($email)){ 

      if(filter_var($email, FILTER_VALIDATE_EMAIL) === false){ 
       echo "<script>alert('Not valid email');</script>"; 
      }else{ 
       // Recipient email 
       $toEmail = '[email protected]'; 
       $emailSubject = 'Data form'.$name; 
       $htmlContent = '<p>'.$name.'</p> 

       // Set content-type header for sending HTML email 
       $headers = "MIME-Version: 1.0" . "\r\n"; 
       $headers .= "Content-type:text/html;charset=UTF-8" . "\r\n"; 

       // Additional headers 
       $headers .= 'From: '.$name.'<'.$email.'>'. "\r\n"; 

       $link = mysqli_connect('xxx', 'xxx', 'xxx', 'xxx'); 

       if($link === false){ 
        die("ERROR: Could not connect. " . mysqli_connect_error()); 
       } 

       $name2 = mysqli_real_escape_string($link, $_REQUEST['name']); 
       $email2 = mysqli_real_escape_string($link, $_REQUEST['email']); 

       $sql = "INSERT INTO xxx (name, email) VALUES ('$name2','$email2')"; 
       $link->query($sql) 
       mysqli_close($link); 

       // Send email 
       if(mail($toEmail,$emailSubject,$htmlContent,$headers)){ 
        echo "<script>alert('Email sent');window.location.href='index.php';</script>"; 
       }else{ 
        echo "<script>alert('Error');</script>"; 
       } 
      } 
     } 
     else{ 
      echo "<script>alert('Fill all fields');</script>";  
     } 
    } 
?> 

どこに問題がありますか?事前に

おかげで、

+0

このコードがスローされる例外はわからないので、問題がどこにあるかを教えてください。 –

答えて

0

変更この:これに

$htmlContent = '<p>'.$name.'</p> 

:すべてです

$htmlContent = '<p>'.$name.'</p>'; 

は、私にとって、それが働きました。

関連する問題