2017-09-11 1 views
-1

programs.php 나는 DB에서 모든 프로그램을 가져 와서 화면에 출력하는 파일입니다. 그리고 나는 모든 프로그램의 세부 사항을 얻는 다른 파일 programDetail.php을 가지고있다. programDetail.php?p_id=123 대신 sitename.com/programs/123과 같은 URL을 표시하려고합니다. 어떻게 관리 할 수 ​​있습니까? .htaccess 파일을 사용할 수 있습니까? 이 같은 htaccess로 사용PHP 의미 및 동적 URL .htaccess를 사용하여

+2

라우팅을 처리하기 위해 AltoRouter라고 (내가 당신을 위해 무엇을 요구이 아니라는 것을 알고) 라이브러리를 사용할 수 있습니다, 또는

RewriteEngine On RewriteCond %{SCRIPT_FILENAME} !-d RewriteCond %{SCRIPT_FILENAME} !-f RewriteRule ^programs/([0-9]+)/?$ ./programDetail.php?id=$1 

다음과 같은 작업을 수행 할 수 있습니다 적절한 연구가 지금, 우리가 대답한다면 _ 가능합니다 _ "예"로 부분? – CBroe

+0

나는 약간의 연구를했지만 행운은 없다. 'sitename.com/programs/123'에 갈 때,'programs.php'의 내용을 표시합니다. 이제 알면 날 도와 줘요. –

+1

무언가를 시도했지만 효과가 없다면, 시도한 것을 우리에게 보여 주기로되어 있습니다. 가서 [ask]를 읽으십시오. – CBroe

답변

0

: 다음 코드 아래

Options +FollowSymLinks 
RewriteEngine On 

RewriteCond %{SCRIPT_FILENAME} !-d 
RewriteCond %{SCRIPT_FILENAME} !-f 

RewriteRule ^programs/(\d+)*$ ./programDetail.php?id=$1 
+0

선생님,'programs.php'의 내용을 표시합니다. –

+0

내 스 니펫에는 ./programDetail.php?id=$1이 (가) 없습니다. programs.php? id = $ 1 – delboy1978uk

+0

시도했습니다. 'sitename.com/programs/123'으로 가면 브라우저는'programs.php'의 내용을 표시합니다. 편집 :'programs.php'에는 ** 프로그램 **이라는 제목이 있으며'programDetail.php'에는 프로그램의 ID (예 : 123)가 있습니다. –

1

확인, 그것은 작동 나

RewriteEngine on 
RewriteRule ^/?Some-text-goes-here/([0-9]+)$ /programDetail.php?p_id=$123 
+0

그것은 나를 위해 작동하지 않았다 : ** 찾을 수 없음 ** 요청한 URL /some-text-goes-here/123.php이 서버에서 발견되지 않았다. –

1

에 대한 예는 htaccess로를 사용하여 가능하다. 당신이 당신의 당신은 당신이 어떤을 할거야 약속

관련 문제