使用全局变量动态改变URL

Use Global Variables to dynamically change URL

所以这真的很难解释,

我有一个A文件夹,还有一个B文件夹。我正在为他们两个使用一个公共数据库。

两个文件夹都有以下文件,每个文件里面都有 => config.php、index.php、upload.php、control_admin.php、admin.php 和 view.php. B与A共享一些基本数据库,CSS和JS文件(没有任何问题)。

现在A用于项目A,B用于项目B。

对于每个项目,我有 URLs => a.example.com & b.example.com

在 a.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?$version=1 并且可以看到图片。

同样适用于 b.example.com

我已经在 .htaccess 中修改了它以创建一个友好的 URL,它将我带到

a.example.com 并根据需要显示图像。

问题来了。每个 view.php 文件都有如下图像 link

<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:

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

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

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

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

对于乙:

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

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

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

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

现在的问题是,如果我上传 A 的第 1 版,然后上传 B 的第 1 版,然后我从 a.example 转到 URL 友好的 link。com/1 或 b.example.com/1... 我在 B 上传文件后,我在 A 看不到。因为 URL 很难指向 B,因为它是最近在同一数据库中上传。

我可以对 URL 做些什么来确保,如果我上传到 a.example.com 然后上传到 b.example.com,具有相同版本的文件...我可以看到两个图像在他们各自的 URLs

a.example.com/2 和 b.example.com/2

希望我说得有道理。提前致谢。

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

我查看了您提供的 google 驱动器 link。

view.php:第 64 行

$project_name_download_form = $_GET['project_name'];

除非您使用这样的 url 访问 view.php:

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 列中设置了值(而不仅仅是空白)。