-1

HTML(テーブル)注文フォームがあります。http://angelasmith.com.au/staging/にあるように、ユーザーはさまざまなセルに入力して、さまざまなアイテムの注文数量を表示する必要があります。

PHPMailerに提供されているデフォルトのコードを設定したところ、これらのメールを受信して​​いることを確認できます。私は今、彼らのコードを修正する必要があります。そうすれば、私が受け取る電子メールには、ユーザーが私の注文フォームに入力した情報/数量が実際に表示されます。

これが私のmail.phpファイルの例です。現在、「これは太字のHTMLメッセージ本文です!」というメールを受信して​​います。指定されたBody変数に従って。ユーザーが入力した情報/数量を含む注文フォームを受け取る必要があります。オンラインで徹底的に検索しましたが、他のカスタムフォームフィールドではなく、電子メールとメッセージの例しか見つかりません。

$mail->Subject = "New Online Form Enquiry";
$mail->Body    = "This is the HTML message body <b>in bold!</b>";
$mail->AltBody = "This is the body in plain text for non-HTML mail clients";

if(!$mail->Send())
{
   echo "Message could not be sent. <p>";
   echo "Mailer Error: " . $mail->ErrorInfo;
   exit;
}

echo "Message has been sent";
?>

HTMLファイルのテーブル行の例。ユーザー入力を取得するには、$ b15などの各セル名の変数を追加する必要があると思うので、これを含めましたが、正確にはわかりません。受信したメールが表として表示されていなくてもかまいません。ユーザーがフォームに入力した内容をすべて読み取ることができれば十分です。

<tr>
 <td rowspan="2" align="right" class="leftColText"><strong>10 RE</strong></td>
 <td height="28"><input name="b15" type="text" class="tdcenter" id="b15" value="1200" style="width:100%;"/></td>
 <td><input name="c15" type="text" id="c15" style="width:100%;" onchange="javascript:calcupptbl(15,1.2,5)"/></td>
 <td><input name="d15" type="text" id="d15" style="width:100%;" onchange="javascript:calcupptbl(15,1.2,5)"/></td>
 <td><input name="e15" type="text" id="e15" style="width:100%;" onchange="javascript:calcupptbl(15,1.2,5)"/></td>
 <td><input name="f15" type="text" id="f15" style="width:100%;" onchange="javascript:calcupptbl(15,1.2,5)"/></td>
 <td><input name="h15" type="text" id="h15" style="width:100%;"onchange="javascript:calcupptbl(15,1.2,5)"/></td>
 <td><input name="i15" type="text" id="i15" style="width:100%;" onchange="javascript:calcupptbl(15,1.2,5)"/></td>
 <td><input name="j15" type="text" id="j15" style="width:100%;" onchange="javascript:calcupptbl(15,1.2,5)"/></td>
 <td><input name="k15" type="text" id="k15" style="width:100%;" onchange="javascript:calcupptbl(15,1.2,5)"/></td>
 <td><input name="l15" type="text" class= "tdcenter" id="l15" value="0.00" style="width:100%;"/></td>
 <td><input name="m15" type="text" class="tdcenter" id="m15" value="0" style="width:90%;" onchange="javascript:calcupptbl(15,1.2)"/></td>
</tr>
4

1 に答える 1

1

わかりました...わかりましたが、顧客が[注文を送信]をクリックすると、メールを送信するスクリプトがpostメソッドで呼び出されます。したがって、送信された値を取得する必要があります。したがって、スクリプトの上部でこれを行います。たとえば、次のようになります。

if (!empty($_POST))
{
    $quantity = isset($_POST['quantity']) ? $_POST['quantity'] : 0;
    $account = isset($_POST['quantity']) ? $_POST['quantity'] : 'Anonymous';

さて...すべての値を取得、サニタイズ、チェックしたら、それらをメール本文に挿入します。

    $mail->Body = "I just received an order of $quantity items from $account!";

すべての$_POST値は、フォームの入力IDに対応します。

于 2013-01-20T05:05:04.363 に答える