我正在处理的网站发布了过去活动的照片画廊。他们希望用户订阅时事通讯以访问这些照片库。
我目前在header.php的最开头使用以下代码:
<?php session_start();
//session_destroy(); ?>
使用此代码正确加载网站,除了在两个网页的源头开头返回以下内容,以及损坏的背景图片:
<b>Warning</b>: session_start() [<a href='function.session-start'>function.session-start</a>]:
Cannot send session cache limiter - headers already sent (output started at /home/.../the-calendar.php:7)
in <b>/home/.../header.php</b> on line <b>2</b><br />
我希望此会话仅在照片库页面上触发,尽管我已经开始相信session_start()标记应该包含在WordPress网站的总体header.php中。
会话php是标题的第一行,我相信这是正确的地方。
我尝试过插入is -page('photo-gallery') - 进入会话php,但这没有成功实现;我怀疑我使用的代码不正确,非常感谢帮助!
不知何故,这种不正确的PHP实现导致网站两个网页上的背景图像中断而不显示。
我很欣赏这些回应;在发布此处之前,我仔细查看了其他主题,并认为尝试在某些页面上触发会话的变化只能提出一个新问题。
关于在会话开始之前调用其他内容的问题 - 我已经在此下面包含了相关标题的第一行,这表明在会话之前没有调用任何内容(至少根据我的理解) :
<?php session_start();
//session_destroy(); ?>
<!DOCTYPE HTML>
<html prefix="og: http://ogp.me/ns#">
<head>
上面包含的警告HTML消息只显示在两个特定网页上(会话标记中未指定的页面和我不需要会话的页面)大约20个。在这两个网页上,背景图像也被破坏,我认为这是这个整体问题的直接原因。
答案 0 :(得分:0)
在&lt;?php
之后,Session_start必须是文件中的绝对第一件事听起来像是先叫其他东西。