0

Chrome と IE では機能するが、Firefox では機能しないフォームを作成しました。送信すると、PHP ファイルの URL が表示された空白の画面が表示されますsendContact.php

マークアップは次のとおりです。

<form action="script/sendContact.php" method="post" class="contactForm">
  <div class="textBoxDivs">
    <label>Name</label>
    <br />
    <input type="text" id="name" name="name" size="40" class="textField"/>
  </div>
  <div class="textBoxDivs">
    <label>Phone</label>
    <br />
    <input type="text" id="phone" name="phone" size="40"class="textField"/>
  </div>
  <div class="textBoxDivs">
    <label>Email</label>
    <br />
    <input type="text" id="email" name="email" size="40"class="textField"/>
  </div>
  <div class="textArea">
    <label>Please describe what services you will require and your proposed budget.</label>
    <br />
    <textarea id="message" cols="40" rows="7" name="message" class="textAreaField">    </textarea>
  </div>
  <div class="formButtonDiv">
    <input type="submit" value="submit" class="formBut"/>
    <input type="reset" value="reset" class="formBut" />
  </div>
</form>

PHPは次のとおりです。

$name       = $_POST['name'];
$email      = $_POST['email'];
$message    = $_POST['message'];
$phone      = $_POST['phone'];
$formcontent= "From: $name \n Email: $email \n Phone: $phone \n Message: $message";
$recipient  = "al@gmail.com";
$subject    = "Contact Form";
$mailheader = "From: $userEmail \r\n";

if (mail($recipient, $subject, $formcontent, $mailheader, $email))
{
  header ("Location: thankYou.html");
} else {
  echo "mail was not sent";
}
4

2 に答える 2

2

私は今Firefoxで試してみましたが、すべてうまくいきました。ところで、php コードを見て、フォームを送信する前に問題がないかどうかを確認する必要があります。空のフィールドで試してみましたが、誰からもメールが届かないと思います..

次のようなものを試してください:

$name       = trim($_POST['name']);
$email      = trim($_POST['email']);
$message    = trim($_POST['message']);
$phone      = trim($_POST['phone']);

$formcontent= "From: $name \n Email: $email \n Phone: $phone \n Message: $message";
$recipient  = "alverdeja88@gmail.com";
$subject    = "Contact Form";
$mailheader = "From: $userEmail \r\n";

if (!empty($name) 
  && !empty($email)
  && !empty($message)
  && mail($recipient, $subject, $formcontent, $mailheader, $email))
{
  header ("Location: http://www.dukecitygrafx.com/thankYou.html");
}
else
{
  echo "mail was not sent";
}
于 2012-08-15T10:14:46.713 に答える
1
  1. HTML ファイルの新しい行を削除します (form Tag!)。Firefox では、これを解決するために問題が発生する可能性があります。

  2. die("hello");sendContact.php で a を試してください

したがって、スクリプトがロードされるかどうかを確認できます

<?php 
die("hello");

$name = $_POST['name'];
$email = $_POST['email'];
$message = $_POST['message'];
$phone = $_POST ['phone'];
$formcontent="From: $name \n Email: $email \n Phone: $phone \n Message: $message";
$recipient = "alverdeja88@gmail.com";
$subject = "Contact Form";
$mailheader = "From: $userEmail \r\n";
if (mail($recipient, $subject, $formcontent, $mailheader, $email)) {
  header ("Location: http://www.dukecitygrafx.com/thankYou.html");
  die();
} else {
  echo "mail was not sent";
}
?>
于 2012-08-15T10:10:04.250 に答える