Проблема PHP с формой электронной почты

#php #email

#php #Адрес электронной почты

Вопрос:

Я использовал этот сайт раньше с большим успехом, и у меня возникла аналогичная проблема с формой электронной почты php. Я попытался скопировать из предыдущей формы, что ребята на этом сайте были чрезвычайно полезны для того, чтобы работать так, как я хотел, но по той или иной причине форма не отправляется. Я уверен, что это глупая оплошность, но был бы признателен за вторую пару глаз.

Вот код:

 <?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." 
nn".$name."nn".$company."nn".$email."nn".$_SERVER['REMOTE_ADDR']."nn".'InterestedIn: '.$InterestedIn, "nn".'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"/>amp;nbsp;amp;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>
 

Любая помощь была бы признательна, поскольку у меня дома новый ребенок, и мне очень нужно время, чтобы стать новой мамой и попытаться завершить этот последний проект.

Заранее спасибо!

Комментарии:

1. вы никогда не заполняете файл cookie, и вы все равно должны использовать сеанс

2. @DaveRandom — поскольку вы помогли мне с оригинальной формой, с которой я скопировал эту, знаете ли вы, почему эта не будет работать? Я что-то упустил в коде? Он выглядит идентично другому, который я сделал.

Ответ №1:

Я думаю, что некоторая базовая отладка очень помогла бы.

  1. Кажется, вы смешиваете $_GET и method='post'
  2. Попробуйте однострочный скрипт, который просто выполняет вызов mail() с жестко заданными значениями. Это работает?
  3. Попробуйте отправить свою форму. Вывод $_POST . Есть ли в нем все, что вы ожидали? Есть ли $_COOKIE ?
  4. Создайте все строки, в которые вы переходите mail , заранее. Каждый из них выглядит так, как должен?
  5. Попробуйте взять именно эти строки и вставить их mail() напрямую (как в # 2 выше). Это работает?

К тому времени, когда вы дойдете до конца этого списка, вы будете знать, в чем заключается ошибка, и сможете получить гораздо более конкретный ответ.

Комментарии:

1. php — это мой пункт недели, не могли бы вы объяснить мне это в терминах lamens? Я не уверен, как проверить то, что вы предлагаете. Если бы я мог отправить его, оттуда я мог бы устранить неполадки, чтобы он выглядел так, как я хочу, в электронном письме.