405 Ошибка HTTP - PHP POST - PullRequest
       21

405 Ошибка HTTP - PHP POST

0 голосов
/ 09 сентября 2010

У меня есть сайт, работающий на Windows Server 2008.

Сайт представляет собой HTML и имеет две формы, которые POST и PHP-скрипты (обе для отправки по электронной почте).

Эта ошибка возникает, однако, когда я нажимаю кнопку отправки на странице

"405 - HTTP-глагол, используемый для доступа к этой странице, недопустим. Страница, которую вы ищете, не может быть отображена, потому чтоневерный метод (HTTP-глагол) был использован для попытки доступа. "

Посмотрев в Интернете, я попробовал несколько решений, но ни одно из них не работает.

Я попытался добавить расширение .html, разрешающее POST, GET в iis Manager (через добавление управляемого обработчика), однако, похоже, это не работает.

есть идеи?любая помощь будет оценена!

РЕДАКТИРОВАТЬ:

КОД HTML ФОРМЫ:

<form id="form1" name="form1" method="post" action="mail.php">
           <fieldset>
           <legend><strong>Please fill out our contact form</strong></legend>
            <table width="622" border="0">
              <tr>
                <td width="277">Name*</td>
                <td width="335"><input class="purple" name="nickname" type="text" id="nickname" /></td>
              </tr>
              <tr>
                <td>EMail*</td>
                <td><input class="purple" name="email" type="text" id="email" /></td>
              </tr>
              <tr>
                <td>Phone No.</td>
                <td><input class="purple" name="tel" type="text" id="tel" /></td>
              </tr>
              <tr>
                <td>Company Name*</td>
                <td><input class="purple" name="comp" type="text" id="comp" /></td>
              </tr>
              <tr>
                <td>Query</td>
                <td><textarea class="purple" name="message" cols="53" rows="10" id="message"></textarea></td>
              </tr>
              <tr>
                <td colspan="2" align="center"><input name="Submit" type="submit" value="Submit"/>
              <label>
                  <input name="reset" type="reset" id="reset" value="Reset" />
                  <input type="hidden" name="ip" value=" echo $REMOTE_ADDR; " />
              </label></td>
                </tr>
                <tr>
                <td>*Required Fields</td>
                <td></td>
              </tr>
               <tr>
                <td colspan="2"><h3>Why not call us? 021 4868150</h3>
                 <p>&nbsp;</p></td>
              </tr>
            </table>
            </fieldset>
        </form>

PHP SCRIPT

<?php
      $nickname = $_REQUEST['nickname'] ;
      $email = $_REQUEST['email'] ;
      $tel = $_REQUEST['tel'] ;
      $comp = $_REQUEST['comp'] ;
      $message = $_REQUEST['message'] ;


    // Let's check if all fields are filled in!
    if(empty($nickname) || empty($email) || empty($comp))
    {
    $error = "All of the required fields have not been completed, <a href=\"javascript:history.go(-1)\">please click here to go back.</a>";
    }
    else
    {
    $content= "$nickname has sent you an e-mail from ePubDirect
    Query:
    $message
    You can contact $nickname via Email: $email. <br />Other relevant details of individual: <br />Telephone Number: $tel <br />Company: $comp";

    mail( "xxxxxxx@gmail.com", " Query", $content, "From: $email"); //first thing has to be address it is going to, then what the subject of the mail should be, the content and a from address which will be the query submitter.
    echo  "<h2>$nickname</h2><br></br>
    Your query has been succesfully sent. <br></br><br></br>
    We will deal with this query and be in touch as soon as possible.<br></br><br></br><br></br> 
    The contact details you submitted are: <br></br><br></br>
    <strong>Email:</strong>&nbsp; $email<br></br><br></br>
    <strong>Phone:</strong>&nbsp; $tel<br></br><br></br>
    <strong>Company:</strong>&nbsp; $comp<br></br><br></br>
    <a //href=\"javascript:history.go(-1)\"> Click here to return to the contact page.</a></br>";
    }; 

    ?>

1 Ответ

1 голос
/ 09 сентября 2010

IIS настроен для обработки файлов PHP для глаголов POST?Похоже, вам нужно добавить глагол POST для файлов PHP, а не файлов HTML.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...