2016-10-11 2 views
0

이렇게 설명하기가 정말 어려울 것입니다.전역 변수를 사용하여 동적으로 URL을 변경하십시오.

저는 A 폴더가 있고 B 폴더가 있습니다. 나는 그들 모두를위한 공통의 데이터베이스를 사용하고있다.

두 폴더에는 각각 => config.php, index.php, upload.php, control_admin.php, admin.php 및 view.php 파일이 있습니다. B가 A와 공유하는 기본적인 데이터베이스, CSS 및 JS 파일이 있습니다 (문제가 아님).

지금 프로젝트 A에 대해이고 B는 프로젝트마다 프로젝트 B.

위한, 전에서의 URL = "& a.example.com b.example.com

있다. example.com/index.php project_name = Apple Version = 1과 같은 특성 파일을 업로드합니다.

b.example.com/index.php에서 project_name = Banana Version = 1과 같은 특성을 가진 이미지 파일을 업로드합니다. .

이 이미지들은 A 및 B의 이미지 폴더에 각각로드됩니다.

지금이 이미지를 볼 수, 나는

a.example.com \ view.php? $로 버전 = 1을 갈 수와 그림을 볼 수 있었다.

유사 b.example.com

내가 1 \

a.example.com에 저를 소요하고 필요에 따라 이미지를 표시하는 쉬운 URL을 만들기 위해 htaccess로에서이 문제를 수정했습니다.

이제 문제가 발생합니다. 각각의 view.php 파일에는 다음 이미지 링크가 있습니다

<img src = "<?php echo  "http://".$GLOBALS['url']."".$GLOBALS['img_folder']."/".$new ?>" style = 'margin: 0px auto; display:block; max-width: 100%;height: auto;'> 

각 파일의 config.php에서이 전역 변수를 가져옵니다. A에 대한

: B에 대한

<?php $GLOBALS['project_name'] = 'Apple';?> 

<?php $GLOBALS['url'] = 'a.example.com/'?> 

<?php $GLOBALS["folder"] = 'FolderA'; ?> 

<?php $GLOBALS['img_folder'] = 'AppleImages'; ?> 

: 내가 링크로 이동 한 다음 버전 1 다음 B의 버전 1과를 업로드하면

<?php $GLOBALS['project_name'] = 'Banana';?> 

<?php $GLOBALS['url'] = 'b.example.com/'?> 

<?php $GLOBALS["folder"] = 'FolderB'; ?> 

<?php $GLOBALS['img_folder'] = 'BananaImages'; ?> 

지금 문제가되는 a.example.com/1 또는 b.example.com/1의 친숙한 URL입니다. B에서 파일을 업로드 한 후에 A에서 URL을 볼 수 없습니다. URL이 B를 가리키고 있기 때문에 동일한 데이터베이스에 업로드하십시오.

a.example.com에 업로드 한 다음 b.example.com에 동일한 버전의 파일을 업로드하면 ... 해당 URL에서 두 이미지를 볼 수 있습니다.

a.example.com/2 및 b.example.com/2

나는 의미가 있기를 바랍니다. 미리 감사드립니다.

https://drive.google.com/drive/folders/0B5nDbj-RhZJMa3drNFlfRzVaLXc?usp=sharing

+0

이미지 링크에'$ new'이 무엇입니까? – Luke

+0

@RyanVincent upload_id가 자동으로 생성 되었습니까, 아니면 입력 했습니까? – siddparkar

+0

생성해야합니다. 그러나이 솔루션은 많은 업로드와 함께 관리하기 어려울 것입니다. 해결책은 비슷한 생각 일 것입니다. 그러나 업로드 정보를 저장하는 테이블에 열을 추가하고 각 업로드 레코드에 프로젝트 이름을 저장하면 버전 번호와 프로젝트 이름을 사용하여 올바른 파일 이름을 찾을 수 있습니다. 그러나'$ new '가 무엇이고 어디에서 왔는지 알려주지 않고 왜 실패했는지 말하기는 어렵습니다. – Luke

답변

1

나는 당신이 제공하는 구글 드라이브 링크를 통해 보았다.

view.php :이 같은 URL로 view.php에 접근하지 않는 라인 (64)

$project_name_download_form = $_GET['project_name']; 

:

a.example.com\view.php?version=1&project_name=apple 

귀하의 $project_name_download_form 빈 문자열 값과 SQL을해야합니다 검색어 :

SELECT demo_id, demo_name, demo_version, demo_details, file 
         FROM demo 
         WHERE demo_name = '' 
         AND demo_version = '1' 

그래서 2 행동 변화 라인 64 : 다음

$project_name_download_form = $GLOBALS['project_name']; 

그리고 확인 demo_name 열이 값이 설정되지 않았는지 직접 데이터베이스를 확인 그것이 (그냥 비어 있지).

+0

이것이 올바른 해결책입니다! – siddparkar

관련 문제