php实现通过cookie换肤的方法

时间:2022-08-23 11:42:00

本文实例讲述了php实现通过cookie换肤的方法。分享给大家供大家参考。具体如下:

saveStyleSheet.php页面如下:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
<?php
function styleSheet($currentCookie){
  // Get Current Style Sheet
  $currentCookie = $_COOKIE["StyleSheet"];
  // Get New cookie file name
  switch($_GET['style']){
    case 1:
      $value = 'style1.css';
    break;
    case 2:
      $value = 'style2.css';
    break;
    case 3:
      $value = 'style3.css';
    break;
    default:
      $value = 'style.css';
    break;
  }
  // If the user views this page, without using
  // style=... then set cookie to the default
  if(!isset($_GET['style'])){
    $value = 'style.css';
  }
  // If the new value doesn't equal the old value allow cookie change
  if(isset($value)||$currentCookie!=$value||isset($currentCookie)){
    setcookie("StyleSheet", $value, time()+600000); /* expires in 10,000 hours*/
    return $_COOKIE["StyleSheet"];
  }else{
    return $_COOKIE["StyleSheet"];
  }
  if(isset($_GET['style'])){
    header("Location: ".$_SERVER['HTTP_REFERER']);
    exit;
  }
}
?>

index.php页面如下:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>My Test Page</title>
<?php
include("saveStyleSheet.php");
if(isset($_COOKIE["StyleSheet"])){
?>
<link rel="stylesheet" type="text/css" href="stylesheets/ <?php echo styleSheet($_COOKIE["StyleSheet"]); ?> " />
<?php
}else{
?>
<link rel="stylesheet" type="text/css" href="stylesheets/style.css" />
<?php
}
?>
</head>
<body>
<a href="saveStyleSheet.php?style=1">Style Sheet 1</a><br />
<a href="saveStyleSheet.php?style=2">Style Sheet 2</a><br />
<a href="saveStyleSheet.php?style=3">Style Sheet 3</a><br />
<a href="saveStyleSheet.php">Default Style Sheet</a>
</body>
</html>

希望本文所述对大家的php程序设计有所帮助。