php更换css
请问一下在php中如何更换css呀
然后保存在Cookies中呢
下次访问时就不会变皮肤或是风格了呀
比如有几个按钮,点一个就会变换一种css皮肤,
当下次再访问时也会显示按最后一次点的那个按钮的皮肤内容!

解决方案 »

  1.   

    定义不同的css文件,每次点击切换css文件,cookie保存的也是css文件名,就行了。
      

  2.   

    请问cookie如何保存css文件名呀
      

  3.   

    服务端Cookie的方法
       前两种方法的弊端显而易见,第一种只能适用firefox浏览器,IE不支持,第二种很难做到全站的CSS切换,只能局限在当前页面,并且不能记忆用户的选择。最好的CSS切换器应该使用服务器端脚本(PHP、ASP、JSP等)来开发。这样做的好处是很明显的:直接、高效、兼容性好、可以记忆用户选择、甚至可以组合不同的CSS实现相当复杂的“皮肤”切换。先在head中添加<link type="text/css" id="pagestyle" rel="stylesheet" runat="server" />     要在服务端使用该样式表,需要在服务端声明:        protected System.Web.UI.HtmlControls.HtmlGenericControl pagestyle;     然后通过一个DropDownList来实现多个样式的切换。private void DropDownList1_SelectedIndexChanged(object sender, System.EventArgs e){string style = this.DropDownList1.SelectedValue;Response.Cookies["pagestyle"].Value = style;   //Cookie保存该样式Response.Cookies["pagestyle"].Expires = DateTime.Now.AddDays(3);//设置cookie有效期,如果不设置则只在会话中创建,不保存该cookie。this.pagestyle.Attributes.Add("href","style/" + style + ".css");//设置样式}并在页面的Page_Load中添加判断用户是否已设置了样式,如未设置,则使用默认。if(!IsPostBack){string style = string.Empty;if(Request.Cookies["pagestyle"] != null){      style = Request.Cookies["pagestyle"].Value;}style = (style == string.Empty) ? "blue" : style;this.DropDownList1.SelectedValue = style;this.pagestyle.Attributes.Add("href","style/" + style + ".css");}
    在每个需要样式切换的页面都加上这个方法,则就可以实现全站切换,当然如果共用页面头,则实现更方便。这是我在网上看到的同,php我是新手,不知道原代码是什么样子的?
    还请高手写一下完整的代码