2013-12-17 2 views
0

Хорошо, вот что я получил, у меня есть веб-сайт, который построен в html, css, JS. У меня также есть форма на странице контактов, ниже приведен код формы. Кроме того, у меня есть проверка php-формы с помощью honeypot. Когда я отправлю форму, если она сделана через 7сек или менее, она не представит форму. Время можно настроить на загрузку страницы. Проблема, с которой я сталкиваюсь, - это когда нажата кнопка отправки, она переходит на страницу 404. Я чувствую, что проблема заключается во мне в действии формы, но я не уверен на 100%. Любая помощь будет полезна, чтобы понять, что здесь происходит. БлагодаряHtml-форма с проверкой php и honeypot

<div class="col1 pad_left1"> 
         <h2>Contact Form</h2> 


          <form method="post" action="<? $_SERVER['PHP_SELF']?>"> 



          <table width="100%" border="0" cellspacing="0" cellpadding="5"> 

           <tr valign="top"> 

            <td width="20%"> 
            <label for="name">Name:</label> 
            </td> 

            <td> 
            <input name="name" type="text" size="40" maxlength="60" id="name" > 
            </td> 

           </tr> 
           <tr valign="top"> 

            <td> 
            <label for="hotel">Hotel/Company:</label> 
            </td> 

            <td> 
            <input name="hotel" type="text" size="40" maxlength="60" id="hotel" > 
            </td> 

            </tr> 
            <tr valign="top"> 

             <td> 
             <label for="address">Address:</label> 
             </td> 

             <td> 
             <input name="hotel" type="text" size="40" maxlength="100" id="address" > 
             </td> 

            </tr> 
            <tr valign="top"> 

             <td> 
             <label for="state">City/State:</label> 
             </td> 

             <td> 
             <input name="state" type="text" size="40" maxlength="100" id="state" > 
             </td> 


           <tr valign="top"> 

            <td> 
            <label for="email">Email Address:</label> 
            </td> 

            <td> 
            <input name="email" type="email" size="40" maxlength="60" id="email" > 
            </td> 

           </tr> 
           <tr valign="top"> 

            <td> 
            <label for="phone">Phone:</label> 
            </td> 

            <td> 
            <input name="phone" type="text" size="40" maxlength="100" id="phone" > 
            </td> 

           <tr valign="top"> 

            <td> 
            <label for="comments">Comments:</label> 
            </td> 

            <td> 
            <textarea name="comments" rows="10" cols="50" id="comments"></textarea> 
            </td> 

           </tr> 

           <tr> 


            <td colspan="2"><div align="center"> 
            <div> 
           <input type="hidden" name="loadtime" value="<?php echo time(); ?>"> 
           </div> 
             <input type="submit" name="Submit" value="Submit"> 

             <input name="Reset" type="reset" id="Reset" value="Reset"> 

            </div></td> 

           </tr> 

         </table> 

        </form> 
+0

Spammer может просто изменить скрытую загрузку var и отправить как сумасшедший. –

ответ

0

Вы на самом деле не вторя ничего в действии, поэтому он будет отправлять к себе - что может быть там, где 404 приходят?

Изменить его:

<?=$_SERVER['PHP_SELF']?> 

Обратите внимание на знак =, это эхо контента на странице.

+0

Итак, с моей проверкой и honeypot в отдельном файле, это проверит этот файл, а затем, если он действителен, он отправит сообщение или будет меньше времени, которое он не отправит? – user1667150

Смежные вопросы