0

大家好,我非常需要你的帮助,这里是 php noob,

我正在创建一个类似公告板的日历,它每个月都会显示不同的条目。日历分为 4 个季度,因此,我每季度有一个 php 文件。每个文件显示该季度的月份及其各自的条目。例子; 我的 firstq.php 包含 1 月、2 月和 3 月的条目。

我在任何页面中都没有提交按钮,只有一个 1Q、2Q、3Q、4Q 的下拉链接图像,它重定向到每个文件。

我怎么能声明当我单击 1Q 图像时它会显示文件 firstq.php 但 url 仍然是 index.php 等等?

我的默认 index.php 显示自 7 月以来的第三季度。

4

4 回答 4

0

您可以将 POST/GET 参数传递给索引页面,如下所示:

"index.php?Quarter=Q1"

您仍然会访问 index.php,您只需要添加逻辑来处理 Quarter 的值。

于 2012-07-18T03:23:30.130 回答
0

你可以有 index.php

require_once('1Q.php');

然后在 if 语句中,选择在下一个选择中调用哪个 Q.php。

于 2012-07-18T03:25:19.740 回答
0

在 index.php 中

<?php
$quarters = array(1=>'firstq', 2=>'secondq', 3=>'thirdq', 4=>'fourthq');
$quarter = isset($_GET['quarter']) ? $_GET['quarter'] : null;

if(isset($quarters[$quarter)
    include $quarters[$_GET['quarter']] . '.php';

像 index.php?quarter=3 这样的测试

或者,如果您只关心当前季度,请执行此操作

$quarters = array(1=>'firstq', 2=>'secondq', 3=>'thirdq', 4=>'fourthq');
$month = date("m", time()); 
$quarter=  ceil($month/3);

include $quarters[$quarter] . '.php';
于 2012-07-18T03:26:06.560 回答
0

您可以向 url 添加一个参数来确定您所在的页面。

<?php

// at the top of the page

$quarters = array('Q1', 'Q2', 'Q3', 'Q4');
$quarter = 'Q1';

// don't allow access to any file on your system
if( isset($_GET['quarter']) && in_array($_GET['quarter'], $quarters) ) {
  $quarter = $_GET['quarter'];
}

// switch the short syntax to a filename
switch($quarter) {
  case 'Q1' :
    $quarter = 'firstq.php';
  break;
  case 'Q2' :
    $quarter = 'secondq.php';
  break;
  case 'Q3' :
    $quarter = 'thirdq.php';
  break;
  case 'Q4' :
    $quarter = 'fourthq.php';
  break;
}

然后在您准备包含它的页面中。

<?php include_once $quarter; ?>

您到每个季度的链接将如下所示。

<ul id="quarters">
  <li><a href="index.php?quarter=Q1"><img src="images/Q1.jpg" /></a></li>
  <li><a href="index.php?quarter=Q2"><img src="images/Q2.jpg" /></a></li>
  <li><a href="index.php?quarter=Q3"><img src="images/Q3.jpg" /></a></li>
  <li><a href="index.php?quarter=Q4"><img src="images/Q4.jpg" /></a></li>
</ul>
于 2012-07-18T03:28:09.913 回答