根据变量在选项卡中显示不同的数据

时间:2019-01-24 11:04:43

标签: javascript php

我正在创建一个视图,以使用户可以在想要查看的数据之间轻松切换。 场景:用户是一个具有多个拥有不同特许经营权的商店的组的经理。我们的仪表板使他可以查看所有商店的整理结果。目前,用户为每个专营权都有一个单独的登录名。我希望能够使用标签在一次登录中同时显示两者。

我创建了两个按钮

<button class="tab tablinks active" onclick="openCity(event, 'table_products')">Franchise 1 </button>
<button class="tab tablinks" onclick="openCity(event, 'products_location')">Franchise 2</button>

然后是2个具有相应ID的div

<div id="table_products" class="tabcontent" width="100%" >
<?
    include 'load_table.php';
?>
</div>

<div id="products_location" class="tabcontent" style="display: block" width="100%" >
<?
    include ('load_table.php');
?>
</div>

我也有JavaScript来切换样式显示的CSS样式。我正在努力将变量传递到正确的文件,以便知道要显示哪些特许经营数据。

我尝试过

include ('load_table.php?franchise=a');

但是那没有用,因为PHP寻找那个确切的文件名。我也尝试过

include 'https://www.example.io/platformDev2/load_table.php?franchise=a';

但这也引发了错误,表示该文件不存在。有没有其他方法可以实现我所需要的?

3 个答案:

答案 0 :(得分:0)

PHP包含,在运行脚本中加载文件内容。

例如:

给出两个文件a.php和b.php

a.php

echo "Hi";
echo "I'll load now other file";
include "b.php";
echo "now I've returned";

b.php

echo "Now I'm on file b";

结果将是当您调用a.php时:

Hi
I'll load now other file
Now I'm on file b
now I've returned

要执行您想做的事情,最好的选择是在load_table.php中包含一个函数

示例:

load_table.php

function load_info ($franchise) {
  if ($franchise = 1) {
    echo "Hi";
  } else {
    echo "bye";
  }
}

主要代码为:

<?php include ('load_table.php'); ?>
<div id="table_products" class="tabcontent" width="100%" >
<?php
    load_info(1);
?>
</div>

<div id="products_location" class="tabcontent" style="display: block" width="100%" >
<?php
    load_info(2);
?>
</div>

(注意,我将只包含一次文件,然后两次调用该函数)。

答案 1 :(得分:0)

include基本上使包含文件的代码成为主脚本的一部分-好像它是最初写在其中一样。

因此,所包含的代码可以使用与在该位置直接编写的任何代码完全相同的方式访问所有变量。

因此您可以轻松完成

<?
    $somevar = 'somevalue';
    include 'load_table.php';
?>

然后访问$somevar内部的load_table.php

答案 2 :(得分:0)

也许您可以使用这样的全局变量:

view.php:

$morningTime = date("00:00:00");
$afternoonTime = date("12:00:00");
$eveningTime = date("17:00:00");

$morningEvents = [];
$afternoonEvents = [];
$eveningEvents = [];

while ($row = $getDatum->fetch(PDO::FETCH_ASSOC))
{
    $dyDate = date($row['eventTime']);
    if($dyDate<$afternoonTime){       // store "Morning Event";
        $morningEvents[] = $row;
    }

    if($dyDate>=$afternoonTime && $dyDate<$eveningTime){    // store "Afternoon Event";
        $afternoonEvents[] = $row;
    }

    if($dyDate>=$eveningTime){  // store "Evening Event";
        $eveningEvents[] = $row;
    }
}

load_table.php:

<div id="table_products" class="tabcontent" width="100%">
<?php
    $selection = "a";
    echo include "load_table.php";
?>
</div>
<div id="products_location" class="tabcontent" style="display: block" width="100%">
<?php
    $selection = "b";
    echo include "load_table.php";
?>
</div>