从HTML链接传递值以在下一页的if语句中使用php

时间:2018-07-10 12:34:38

标签: php html

我目前有一个包含4个链接的菜单,每个链接都将转到其自己的php文件/页面,如下所示:

<!--Page One-->
<a href="temp_one.php"><h5 style="padding-bottom: 10px;">Template One</h5></a>
<a href="temp_two.php"><h5 style="padding-bottom: 10px;">Template Two</h5></a>
<a href="temp_three.php"><h5 style="padding-bottom: 10px;">Template Three</h5></a>
<a href="temp_four.php"><h5 style="padding-bottom: 10px;">Template Four</h5></a>

我正在对此进行重构,以便仅使用一个文件,该文件可以根据所选择的链接(可能是通过使用GET)有条件地设置页面的HTML

我想更改它以获取指向直接链接到新的单个页面template.php的每个链接的值,并使用该页面的值,以便新的url有效地如下所示:

template.php?1
template.php?2
template.php?3
template.php?4

基本上与此相同:

<a href="template.php?1"><h5 style="padding-bottom: 10px;">Template One</h5></a>
<a href="template.php?2"><h5 style="padding-bottom: 10px;">Template Two</h5></a>
<a href="template.php?3"><h5 style="padding-bottom: 10px;">Template Three</h5></a>
<a href="template.php?4"><h5 style="padding-bottom: 10px;">Template Four</h5></a>

原因是我希望能够在template.php的if语句中使用这些值,这样我才能知道使用哪种HTML:

<!--Page Two, template.php-->
if(value = 1){
    //HTML for template one
}
elseif(value=2){
    //HTML for template two
}
elseif(value=3){
    //HTML for template three
}
else{
    //HTML for template four
}

如何通过if语句修改链接的html,以提供在下一页中使用的正确值?

1 个答案:

答案 0 :(得分:3)

您可以这样做:

通过URL传递一个指示模板值的变量。

在php文件template.php中,$_GET是该变量。

<a href="template.php?value=1"><h5 style="padding-bottom: 10px;">Template One</h5></a>
<a href="template.php?value=2"><h5 style="padding-bottom: 10px;">Template Two</h5></a>
<a href="template.php?value=3"><h5 style="padding-bottom: 10px;">Template Three</h5></a>
<a href="template.php?value=4"><h5 style="padding-bottom: 10px;">Template Four</h5></a>

template.php中,

$value = isset($_GET['value']) ? $_GET['value'] : 1; // Where 1 is default value.

if($value = 1){
    //HTML for template one
}
elseif($value=2){
    //HTML for template two
}
elseif($value=3){
    //HTML for template three
}
else{
    //HTML for template four
}