1

お問い合わせフォームでは、通常、お客様が情報やメールアドレスなどを入力し、[送信]をクリックするとメールが送信されます。

ただし、[メール]フィールドに入力されたメールにメールを送信するフォームが必要です。

追跡情報を毎日顧客に送信する必要があり、電子メールクライアントではなくこのフォームから送信したいと思います。

 <div id="form">
 <div id="name">
 <p id="username"> Name:&nbsp; </p>
 <input type="text" name="name" class="textfield">
 </div>
 <div id="name">
 <p id="username"> Email: &nbsp; </p>
 <input type="text" name="name" class="textfield">
 </div>
 <div id="name">
 <p id="username"> Message: </p>
 <input type="text" name="message" class="textarea">
 </div>
 <input type="button" value="SEND" id="btn"> 
 </div>

SEND関数が正しい方法で起動する最後の部分を実行する方法がわかりません。誰かがそれを手伝ってくれるならお願いします。

4

1 に答える 1

3

Swiftmailer を使用してこれを解決します。フォームは次のようになります。

<form method="POST" action="send.php">
<div id="form">
<div id="name">
<p id="username"> Name:&nbsp; </p>
<input type="text" name="name" class="textfield">
</div>
<div id="name">
<p id="username"> Email: &nbsp; </p>
<input type="text" name="email" class="textfield">
</div>
<div id="name">
<p id="username"> Message: </p>
<input type="text" name="message" class="textarea">
</div>
<input type="button" value="SEND" id="btn"> 
</div>
</form>

次に、「send.php」は次のようになります。

<?php
require_once 'lib/swift_required.php';

$transport = Swift_SmtpTransport::newInstance('smtp.google.com', 465, 'ssl')
  ->setUsername('mail@gmail.com')
  ->setPassword('your password');

$mailer = Swift_Mailer::newInstance($transport);

$name = $_POST['name'];
$emailTo = $_POST['email'];
$message = $_POST['message'];


$message = Swift_Message::newInstance('Your subject goes here')
  ->setFrom(array('yourmail@here.com' => 'Your name here'))
  ->setTo(array($emailTo => $name))
  ->setBody($message);


$result = $mailer->send($message);

if ( $result > 0 )
{
    //Email was sent
}
else
{
    // Email was not sent
}

?>

ここからダウンロードできる Swiftmailer: http://swiftmailer.org/download (send.php と同じパスに解凍するだけです) Swiftmailer のドキュメントはこちら: http://swiftmailer.org/docs/introduction.html

それが役に立てば幸い!

于 2012-12-01T19:27:29.180 に答える