仅包含电子邮件字段的PHP表单赢得';t发送,而完整的表单工作正常

仅包含电子邮件字段的PHP表单赢得';t发送,而完整的表单工作正常,php,html,forms,Php,Html,Forms,所以我设法得到了一个包含姓名、电子邮件和消息的表单,现在我正试图制作另一个表单,以实现某种“敬请关注”的功能,但我无法让它在我的一生中发挥作用。我希望有人能指出(可能)明显的错误 HTML: PHP: 与另一种形式的代码进行比较: HTML: 消息 PHP: 同一页面中的2个字段应具有相同的名称和id。 尝试为表单操作属性提供完整的url,即使用站点url ex site\u url/页面 <fieldset> <form class="subscripti

所以我设法得到了一个包含姓名、电子邮件和消息的表单,现在我正试图制作另一个表单,以实现某种“敬请关注”的功能,但我无法让它在我的一生中发挥作用。我希望有人能指出(可能)明显的错误

HTML:


PHP:


与另一种形式的代码进行比较:

HTML:


消息
PHP:


同一页面中的2个字段应具有相同的名称和id。 尝试为表单操作属性提供完整的url,即使用站点url ex site\u url/页面

<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>'
?>

消息

================其他形式========

<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()确定是否单击了该按钮。
这应该有效。

两个表单都在同一页中?是的,它们链接到两个不同的PHP文件。第2个字段在同一页中应该有相同的名称和id。更改一个字段名称并尝试它将起作用。我将更改为其他名称并在PHP中进行了更改,但当我按提交按钮时仍然没有发生任何事情。尝试在表单操作属性中提供完整url我尝试了一下,但电子邮件表单仍然没有任何作用。此外,完整表单现在只显示传入电子邮件中提交的名称,而email:和message:字段保持为空。我发现两个php文件都有语法错误,我不知道如何修复它。只需在两个回音“”的末尾添加分号(;);
<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
    $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>'
?>
<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>'
?>
                                    <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>'
    }
?>