所以我设法得到一个名字,电子邮件和消息工作的表格,现在我正在努力制作另一个表格,以及#34;敬请期待"功能,但我不能让它为我的生活工作。我希望有人可以指出(可能)明显的错误。
HTML:
<fieldset>
<form class="subscriptionForm" method="post" action="mail.php">
<input name="email" id="subscriptionForm" class="inputForm" type="text" value="Your Email" onFocus="if (this.value=='Your Email') this.value=''" onBlur="if (this.value==''){this.value='Enter Your Email Address'}" />
<input name="submit" type="submit" id="submitButton" class="transition" value="Send">
</form>
</fieldset>
PHP:
<?php
$email = $_POST['email'];
$from = 'From: Studio Westend';
$to = 'danny@studiowestend.de';
$subject = 'Studio Westend Mailing List';
$body = "From: E-Mail: $email\n";
if (mail ($to, $subject, $body, $from, "-f danny@studiowestend.de"))
echo '<p>Your E-mail has been added!</p>'
?>
为了比较另一种形式的代码:
HTML:
<form method="post" action="contact.php" name="contactform" id="contactform">
<input name="name" type="text" id="name" onFocus="if(this.value == 'Name') { this.value = ''; }" onBlur="if(this.value == '') { this.value = 'Name'; }" value="Name" >
<input name="email" type="text" id="email" onFocus="if(this.value == 'E-mail') { this.value = ''; }" onBlur="if(this.value == '') { this.value = 'E-mail'; }" value="E-mail" >
<textarea name="message" id="message" onFocus="if(this.value == 'Message') { this.value = ''; }" onBlur="if(this.value == '') { this.value = 'Message'; }" >Message</textarea>
<input type="submit" class="send_message transition" id="submit" value="Send Message" />
</form>
PHP:
<?php
$name = $_POST['name'];
$email = $_POST['email'];
$message = $_POST['message'];
$from = 'From: Studio Westend';
$to = 'rent@studiowestend.de';
$subject = 'Studio Westend Rent Form';
$body = "From: $name\n E-Mail: $email\n Message:\n $message";
if (mail ($to, $subject, $body, $from, "-f rent@studiowestend.de"))
echo '<p>Your message has been sent!</p>'
?>
答案 0 :(得分:1)
<form class="subscriptionForm" method="post" action="mail.php">
<input name="email" id="subscriptionForm" class="inputForm" type="text" value="Your Email" onFocus="if (this.value=='Your Email') this.value=''" onBlur="if (this.value==''){this.value='Enter Your Email Address'}" />
<input name="form1" type="submit" id="submitButton" class="transition" value="Send">
</form>
</fieldset>
<?php
if(isset($_POST['form1'])){
$email = $_POST['email'];
$from = 'From: Studio Westend';
$to = 'danny@studiowestend.de';
$subject = 'Studio Westend Mailing List';
$body = "From: E-Mail: $email\n";
if (mail ($to, $subject, $body, $from, "-f danny@studiowestend.de"))
echo '<p>Your E-mail has been added!</p>'
}
?>
============其他形式========
<form method="post" action="contact.php" name="contactform" id="contactform">
<input name="name" type="text" id="name" onFocus="if(this.value == 'Name') { this.value = ''; }" onBlur="if(this.value == '') { this.value = 'Name'; }" value="Name" >
<input name="email" type="text" id="email" onFocus="if(this.value == 'E-mail') { this.value = ''; }" onBlur="if(this.value == '') { this.value = 'E-mail'; }" value="E-mail" >
<textarea name="message" id="message" onFocus="if(this.value == 'Message') { this.value = ''; }" onBlur="if(this.value == '') { this.value = 'Message'; }" >Message</textarea>
<input type="submit" name="form2" class="send_message transition" id="submit" value="Send Message" />
</form>
<?php
if(isset($_POST['form2'])){
$name = $_POST['name'];
$email = $_POST['email'];
$message = $_POST['message'];
$from = 'From: Studio Westend';
$to = 'rent@studiowestend.de';
$subject = 'Studio Westend Rent Form';
$body = "From: $name\n E-Mail: $email\n Message:\n $message";
if (mail ($to, $subject, $body, $from, "-f rent@studiowestend.de"))
echo '<p>Your message has been sent!</p>'
}
?>
注意:您的代码不安全。 注意2:您应该为每个表单的提交按钮指定一个不同的名称,并且您应该使用if()来确定是否单击了该按钮。 这应该有用。
答案 1 :(得分:0)
同一页面中的2个字段不应具有相同的名称和ID。 尝试为表单操作属性提供完整的URL,即使用站点url ex site_url / page。
<fieldset>
<form class="subscriptionForm" method="post" action="mail.php">
<input name="email" id="subscriptionForm" class="inputForm" type="text"
value="Your Email"
onFocus="if (this.value=='Your Email') this.value=''"
onBlur="if (this.value==''){this.value='Enter Your Email Address'}" />
<input name="submit" type="submit" id="submitButton" class="transition" value="Send">
</form>
</fieldset>
<?php
$email = $_POST['email'];
$from = 'From: Studio Westend';
$to = 'danny@studiowestend.de';
$subject = 'Studio Westend Mailing List';
$body = "From: E-Mail: $email\n";
if (mail ($to, $subject, $body, $from, "-f danny@studiowestend.de"))
echo '<p>Your E-mail has been added!</p>'
?>
<form method="post" action="contact.php" name="contactform" id="contactform">
<input name="name" type="text" id="name"
onFocus="if(this.value == 'Name') { this.value = ''; }"
onBlur="if(this.value == '') { this.value = 'Name'; }" value="Name" >
<input name="contact_email" type="text" id="contact_email"
onFocus="if(this.value == 'E-mail') { this.value = ''; }"
onBlur="if(this.value == '') { this.value = 'E-mail'; }" value="E-mail" >
<textarea name="message" id="message"
onFocus="if(this.value == 'Message') { this.value = ''; }"
onBlur="if(this.value == '') { this.value = 'Message'; }" >Message</textarea>
<input type="submit" class="send_message transition" id="submit" value="Send Message" />
</form>
<?php
$name = $_POST['name'];
$email = $_POST['contact_email'];
$message = $_POST['message'];
$from = 'From: Studio Westend';
$to = 'rent@studiowestend.de';
$subject = 'Studio Westend Rent Form';
$body = "From: $name\n E-Mail: $email\n Message:\n $message";
if (mail ($to, $subject, $body, $from, "-f rent@studiowestend.de"))
echo '<p>Your message has been sent!</p>'
?>