简体   繁体   English

电子邮件表单的PHP问题

[英]PHP Issue with Email Form

I have used this site before with great success and I am having a similar issue with a php email form. 我曾经在此网站上获得过巨大成功,但在使用PHP电子邮件表单时遇到了类似的问题。 I tried to copy from the previous form that the guys on this site were extremely helpful in getting to work the way I wanted, but for some reason or another it won't send the form. 我尝试从以前的表格复制来,该网站上的人对按照我想要的方式工作非常有帮助,但是由于某种原因,它不会发送该表格。 I am sure that it is a silly oversight, but would appreciate a second set of eyes. 我确信这是一个愚蠢的疏忽,但希望您能多加注意。

Here is the code: 这是代码:

<?php
$state = 0;
// check to see if verificaton code was correct
if(md5($verif_box).'a4xn' == $_COOKIE['tntcon']){
// if verification code was correct send the message and show this page
mail("myemailaddress@hotmail.com", 'Website Inquiry: '.$subject, "\n".$comments." 
\n\n".$name."\n\n".$company."\n\n".$email."\n\n".$_SERVER['REMOTE_ADDR']."\n\n".'InterestedIn: '.$InterestedIn, "\n\n".'ContactMethod: '.$ContactMethod,"From: $email");
// delete the cookie so it cannot sent again by refreshing this page
setcookie('tntcon','');
$state = 2;
} else if(isset($message) and $message!=""){
// if verification code was incorrect then return to contact page and show error
$state = 1;
}

if ($state == 0) {  ?>
<form action="" method="post" name="form1" id="form1" 

onsubmit="MM_validateForm('email','','RisEmail','name','','R','verif_box','','R')

;return document.MM_returnValue">

 <p><strong>Tell us what you're interested in:</strong></p>
<dl>
    <dd><input type="radio" name="InterestedIn" value="BIBS<?php echo $_GET['InterestedIn'];?>"> Blow-In-Blanket System
    <input type="radio" name="InterestedIn" value="Foam<?php echo $_GET['InterestedIn'];?>"> Soya Spray Foam
    <input type="radio" name="InterestedIn" value="Attic<?php echo $_GET['InterestedIn'];?>"> Attic Insulation
    <input type="radio" name="InterestedIn" value="NotSure<?php echo $_GET['InterestedIn'];?>" checked="checked"> Not Sure</dd>
</dl>
<p><strong>Enter additional comments in the space provided below:</strong></p>
<dl>
    <dd><textarea name="comments" cols="50" rows="5" border="0" id="comments"><?php echo $_GET['comments'];?></textarea></dd>
</dl>
<p><strong>Tell us how to get in touch with you:</strong></p>
<dl>
    <dd>
    <table>
        <tr>
            <td>Name*</td>
            <td>
            <input type="text" size="40" maxlength="256" name="Name" value="<?php echo $_GET['name'];?>"></td>
        </tr>
        <tr>
            <td>Company</td>
            <td>
            <input type="text" size="40" maxlength="256" name="Company" value="<?php echo $_GET['company'];?>"></td>
        </tr>
        <tr>
            <td>Email*</td>
            <td><input type="text" size="40" maxlength="256" name="email" value="<?php echo $_GET['email'];?>"></td>
        </tr>
        <tr>
            <td>Phone</td>
            <td><input type="text" size="40" maxlength="256" name="Phone" value="<?php echo $_GET['phone'];?>"></td>
        </tr>
        <tr>
            <td>City</td>
            <td><input type="text" size="40" maxlength="256" name="City" value="<?php echo $_GET['city'];?>"></td>
        </tr>
    </table>
    </dd>
</dl>
    <p><strong>Best method to get in touch with you:</strong></p>

<dl>
    <dd><input type="radio" name="ContactMethod" value="byphone<?php echo $_GET['InterestedIn'];?>" checked="checked">  Phone
    <input type="radio" name="ContactMethod" value="byemail<?php echo $_GET['InterestedIn'];?>"> Email
    </dd>
</dl>

   <dl><dd><img src="verificationimage.php?<?php echo rand(0,9999);?>" alt="verification image, type it in the box" width="50" height="24" align="top"/>&nbsp;&nbsp;<input name="verif_box" type="text" id="verif_box" style="padding:2px; border:1px solid #CCCCCC; width:80px; height:14px;"/><br /><br />
Enter Verification Image

</dd></dl>


<p style="padding-left:60px;"><input type="submit" class="button primary" value="Submit Form" name="submit"/>
<input type="reset" class="button primary" value="Clear Form" name"clear" /></p>
</form>

Any help would be appreciated as I have a new baby at home and am very pressed for time being a new mom and trying to get this last project completed. 任何帮助将不胜感激,因为我在家中有一个新婴儿,并且非常渴望有时间成为新妈妈,并努力完成最后一个项目。

Thank you in advance! 先感谢您!

I think some basic debugging would help a lot. 我认为一些基本的调试会很有帮助。

  1. You seem to be mixing $_GET and a method='post' 您似乎在混用$_GETmethod='post'

  2. Try a one line script that just does a call to mail() with hardcoded values. 尝试一个仅用硬编码值调用mail()单行脚本。 Does that work? 那样有用吗?

  3. Try submitting your form. 尝试提交您的表格。 Output $_POST . 输出$_POST Does it have everything you were expecting? 它具有您所期望的一切吗? Does $_COOKIE ? $_COOKIE吗?

  4. Construct all the strings you are passing into mail ahead of time. 提前构造要传递给mail所有字符串。 Do they each look like they are supposed to? 他们每个人看起来像他们应该的吗?

  5. Try taking those exact strings and putting them into mail() directly (like #2 above). 尝试采用这些确切的字符串,然后将其直接放入mail() (如上面的#2)。 Does that work? 那样有用吗?

By the time you get to the end of this list, you'll know where the failure is and can get a much more specific answer. 到此列表的末尾,您将知道失败的位置,并可以获得更具体的答案。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM