2012-03-17 2 views
0

간단한 등록 양식이 있습니다. 나는 몇 시간 동안 수색을하고 모든 것을 시도했다 - 기본적으로 나는 그것을 게시/가져 오기 위해 제거했다. 양식 페이지에 내 코드PHP 폼 - 'get'은 작동하지만 'post'가 아님

여기

Not Acceptable

An appropriate representation of the requested resource /tmp/register.php could not be found on this server. Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request.

이다 : 나는 그것이 잘 작동 (양식 및 스크립트 페이지 모두에서) 얻을 수있는 방법을 설정하면 내가 게시를 설정하면,이 오류가

난 그냥 register.php에 가면

<?php 
    echo "Name: " . $_POST["name"] . "<br>"; 
    echo "Email: " . $_POST["email"] . "<br>"; 
    echo "Password: " . $_POST["password"] . "<br>"; 
    echo "Location: " . $_POST["city"] . ", " . $_POST["country"] . "<br>"; 
?> 

는 그냥 게시물이 공백을 보여 주지만, 나는 양식을 제출하면 그것은 제공 :

<form id="registration" onsubmit="return validateRegistration();" action="register.php" method="post"> 
    Name:  <input type="text" id="name" name="name" placeholder="Required"> 
    <br> 
    Email: <input type="email" id="email" name="email" placeholder="Required"> 
    <br> 
    Confirm: <input type="email" id="confirm_email" autocomplete="off" placeholder="Required"> 
    <br> 
    Password: <input type="password" id="password" name="password" placeholder="Required"> 
    <br> 
    Confirm: <input type="password" id="confirm_password" autocomplete="off" placeholder="Required"> 
    <br> 
    City:  <input type="text" id="city" name="city" placeholder="Optional"> 
    <br> 
    Country: <input type="text" id="country" name="country" placeholder="Optional"> 
    <br> 
    <br> 
    <hr> 
    <a href="#">Terms and Conditions</a> 
    <br> 
    <input type="submit" value="Accept and Complete Registration"> 
</form> 

그리고 내 스크립트 페이지 (register.php)에 , 내가 가진 사용할 수 없음 406 오류.

누군가가 도와 드릴 수 있습니까? 나는 완전히 우글 거리다. 감사합니다

+1

validateRegistration()은 어떤 모양입니까? –

+0

집에 올 때 추가 하겠지만 다음과 같은 이유로 그걸 처리 할 수 ​​있을지는 의문입니다. 1. 한 번 꺼내서 작동하지 않습니다. 2. 가져 오기와 함께 작동하며 게시하지 마십시오. – Raekye

+0

http : // www.checkupdown.com/status/E406.html – Joseph

답변

0

오류 코드는 /tmp/register.php에 파일을 찾고 있다고 말합니다. 그 맞습니까? 아마도 양식 작업을 /register.php으로 변경 하시겠습니까?

또한 PHP는 약간의 외모를 보였지만 PHP 파일에서 복사/붙여 넣기 한 것으로 가정하고 주변 HTML을 삭제 한 이유가 무엇입니까?

+0

파일은 존재한다; URL로 열면 이름 : (공백) 등 등이 표시되지만 제출을 통해 열면 (URL이 동일한 지 확인) 오류가 발생합니다. 내가 PHP를 "get"으로 바꾸면 PHP가 올바로 작동한다고 나는 믿는다. 집에 도착하면 다시 확인해 보겠습니다. – Raekye

3

문제에 대한 답변을 찾은 적이 있는지 궁금합니다. 나는 POST가 절대적으로 데이터를 반환하지는 않지만 오류없이 GET했다.

내 문제에 대한 이상한 부분은 내 사이트 중 하나에서만 발생한다는 것입니다. 모든 사이트는 동일한 서버에 있습니다.

의식적으로 약 3 시간 동안 키보드에 얼굴을 두드린 후, 나는 깨달았다. 내가 작동하지 않는 한 사이트는 URL 인코딩을 설정하여 항상 "www"를 제거했습니다. 내 솔루션은 URL을 항상 "www"를 추가하도록 강제하는 것이었고 문제는 사라졌습니다.

1

.htaccess 리디렉션 또는 잡아 블록 또는 라우트되지 것 POST를 차단로 설정되어 어떤 경우에는 .htaccess

를 아직 언급되지 않은 또 다른 가능성이있다.

당신이 말할 수있는 페이지로 이동할 수 있지만 POST가 그 페이지에 도달하지 못하면 무언가가 차단되고 사용중인 웹 서버 플랫폼이 유일한 것입니다.

이전에 호스팅 제공 업체를 사용 중이라고 언급 했으므로 POST 요청에 대해 어떤 규칙을 설정했는지 구체적으로 질문하십시오. 실제로 질문에 답변 할 수있는 사람을 얻으려면 잠시 기다려야 할 것입니다. 또는 당신이 좋아 ..

나는 모든 노력을 ... wget

wget --post-data 'name=test' http://server.com/tmp/register.php 
0
난 형태로 여러 텍스트 영역 필드에 ckeditor를 사용하고 같은 오류가 발생했다

으로이에게 명령 줄에서 비트를 테스트 할 수 있습니다 게시물 대신에 get을 사용하여, 모드 유가 증권과 내가 생각할 수있는 것보다 더 많은 것들을 사용했습니다. ...

하지만 마침내 나는 여러 필드에서 ckeditor를 제거했을 때 작동합니다 ... 이제 완벽하게 작동합니다 ...

코드의 필드 중 일부는 찾아보기/서버가 SQL 쿼리를 주입으로 처리하여 페이지를 직접 차단하는 일부 내부 코드를 생성 할 수 있습니다. $HTTP_RAW_POST_DATA 대신 $_POST에 의해

그 코드를 찾을 수

...

-1

가져 오기 후 데이터입니다. 희망이 도움이됩니다.

관련 문제