2013-08-14 3 views
0

PHP로 웹 사이트를 만들고 있습니다. 모든 작업이 정상적으로 작동하지만 .htaccess 파일을 변경하면 양식 게시 방법이 데이터를 게시하지 않습니다..htaccess를 변경 한 후 데이터가 게시되지 않습니다.

htaccess로 파일 (내가 stackoverflow.com에서 이걸 발견)

#Options +FollowSymLinks -MultiViews 
# Turn mod_rewrite on 
RewriteEngine On 
RewriteBase/

## don't touch /forum URIs 
RewriteRule ^forums/ - [L,NC] 

## hide .php extension snippet 

# To externally redirect /dir/foo.php to /dir/foo 
RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s([^.]+)\.php [NC] 
RewriteRule^%1 [R,L] 

# To internally forward /dir/foo to /dir/foo.php 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME}.php -f 
RewriteRule ^(.*?)/?$ $1.php [L] 

형태

<form method="post" id="form" action="view_images.php"> 
    <input type="text" name="img" value="images/1.jpg" id="img_name" /> 
    <input type="submit" id="submit" value="submit" /> 
</form> 

잘못된 것입니다 어떤 아이디어?

+0

"view_images.php"파일이 해결되는지 알고 계십니까? 이것이 의미하는 바는 브라우저에서 "view_images.php"로 직접 이동하십시오. 어쩌면 디버그 문자열을 추가하고 그것을 반향시킬 수 있습니다. 내 생각 엔 RewriteRule 중 하나가 손상되어 view_images.php가로드되지 않도록하는 것입니다. –

+0

view_images.php가로드되고 있지만 $ _POST [ 'img'] 변수가 비어 있습니다. –

답변

0

이 규칙 :

RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s([^.]+)\.php [NC] 
RewriteRule^%1 [R,L] 

view_images.php을 위해 POST 요청을 일으키는 원인이되고 view_images로 리디렉션하고, 따라서 당신이 요청 본문 (게시 된 모든 데이터)를 잃게됩니다. 이 리디렉션을 원하지 않으므로 view_images.php URL로 POST하지 마십시오.

<form method="post" id="form" action="view_images"> 
    <input type="text" name="img" value="images/1.jpg" id="img_name" /> 
    <input type="submit" id="submit" value="submit" /> 
</form> 
관련 문제