2013-05-18 5 views
-2

index.php에 사용자 입력을받는 양식이 있습니다.이 양식은 include를 포함하고 처리를 위해 다른 PHP 파일로 사용자 입력을 보냅니다. 다만 도메인 경우 (하나의 텍스트 입력에 초점이 맞춰지면 입력 타격에 의해, 양식을 제출.htacess 또는 PHP를 사용하여 다른 URL로 리디렉션

<?php 
if(isset($_GET['q'])){ 
    include_once "form.php"; 
    exit(0); 
} 
?> 
<!Doctype HTML> 
<html lang="en"> 
    <head> 
     <meta charset="utf-8" /> 
     <title>Search</title> 
    </head> 
    <body> 
     <form method="get"> 
     <input type="text" name="q" /> 
    </form> 
    </body> 
</html> 

, 그것은

http://mysite.com/?q=textUserEntered로 이동 : 여기

는 index.php에의 코드 의 index.php가) 이전

을 방문하는 경우 또는 http://mysite.com/index.php?q=textUserEntered는 (어떻게하면 http://mysite.com/form?q=textUserEntered 또는 http://mysite.com/index.php/form?q=textUserEntered에 가서 얻을 수 있습니다) 전에 방문했다 여전히 동안 페이지 양식 데이터를 form.php에 담기

나는 PHP가있는 솔루션을 선호하지만, 이것을 수행하는 유일한 방법은 .htacess를 사용하는 것이면 공유하십시오.

처음 index.php 및 form.php에서 시도했지만 URL로 이동하지만 form.php로 데이터를 전달하지 않고 404 오류 페이지로 이동합니다.

if(!empty($_GET['q'])) 
{ 
    header("Location: form?q=".rawurlencode($_GET['q'])); 
    exit; 
} 

action 속성의 값을 form.php를 추가하면 URL을 만들 것 때문에 나는 액션 속성을 사용할 수 없습니다 http://mysite.com/form.php?q=userEnteredText하지 http://mysite.com/form?q=userEnteredText

+0

시도의 리디렉션을 /index.php/form 할 ... 양식 요소에'의회 처리 속성을 설정 뭐가 잘못 – matsko

+1

'는 t 리디렉션 할 필요가? –

+0

@matsko 어떻게해야합니까 form.php에 양식 데이터를 전달합니까? 나는 그 일을 내 방식대로 시도했다. 다른 제안이 있으십니까? – IMUXIxD

답변

1

그냥 데이터를 전송하는 양식을 말해, 당신 돈

<form method="get" action="form.php"> 
+0

저는 아닙니다 이 프로젝트에 대한 form.php의 위치를 ​​공개하고 HTML에 배치하면 해당 위치가 표시됩니다. 또한 action 속성의 값에 form.php를 추가하면 URL이 http://mysite.com/form.php?q=userEnteredText가 아닌 http://mysite.com/form?q=userEnteredText가됩니다. – IMUXIxD

관련 문제