Forum Moderators: coopster

Message Too Old, No Replies

Warning: session start() [function.session-start]: Cannot send session

         

xbl01234

10:18 am on May 3, 2008 (gmt 0)

10+ Year Member



Hi:
why my following code always give me some error as following:

Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /home/biznisfi/public_html/Search.php:1) in /home/biznisfi/public_html/Search.php on line 2

search.php

<?php
session_start();
?>

<?php
$url= $_SERVER['REQUEST_URI'];
$url=explode("/", $url);
$searchString=$url[2];
$currentpage=$url[4];
?>

<?php
include("conDatabase.php");

$limit=5;
$limitValue = $currentpage * $limit - ($limit);

$sql="select Subject as subject, link, MATCH (Subject,Content) AGAINST ('$searchString') from Thread";

$totalrowsresult = mysql_query($sql);
// process results
$totalrows = mysql_num_rows($totalrowsresult);

echo "<br> total rows are : " . $totalrows . "<br>";

$sql="select Subject as subject, link from Thread where MATCH (Subject,Content) AGAINST ('$searchString')LIMIT $limitValue, $limit";

$result=mysql_query($sql);
if (!$result){
die ("Error processing request- check your query from search.php");
}
if(mysql_num_rows($result) == 0){
echo("Nothing to Display!");
}

echo("<table>");
while($row = mysql_fetch_array($result)){
echo("<tr><td>");
echo ("<a href=");
echo $row['link'];
echo (">");
echo $row['subject'];
echo ("</a>");
echo("</td></tr>");
}

echo("</table>");

$numofpages = $totalrows / $limit;
if(($totalrows % $limit) != 0)
$numofpages = intval($numofpages) + 1;
$pageL=$_SESSION['search_pageL'];
$pageR=$_SESSION['search_pageR'];

if ($currentpage != 1){
$pageprev=$currentpage-1;
echo("<a href=\"/Search/$searchString/page/$pageprev/\">PRE </a>");
}
else{
echo( "PREV ");
}

if($_SESSION['search_entry'] == 1){
$_SESSION['search_entry']++;

if($numofpages >= 7){
$pageL=1;
$pageR=7;
$_SESSION['search_pageR']=$pageR;
$_SESSION['search_pageL']=$pageL;
}
else{
$pageL=1;
$pageR=$numofpages;
$_SESSION['search_pageR']=$pageR;
$_SESSION['search_pageL']=$pageL;
}
}

if(($_SESSION['search_entry'] != 1) && (($pageR-$currentpage) <= 1)) {

if(($numofpages-$pageR) >= 3){
$pageR = $pageR + 2;
$_SESSION['search_pageR']=$pageR;

if(($currentpage-$pageL)>=3){
$pageL=$currentpage-3;
$_SESSION['search_pageL']=$pageL;
}

}
else{
$pageR=$numofpages;
$_SESSION['search_pageR']=$pageR;

if(($currentpage-$pageL)>=3){
$pageL=$currentpage-3;
$_SESSION['search_pageL']=$pageL;
}

}

}

if(($_SESSION['search_entry'] != 1) && (($currentpage-$pageL) <= 1)) {
if(($pageL-1)>=3){
$pageL=$pageL-3;
$_SESSION['search_pageL']=$pageL;

if(($pageR-$currentpage)>=3){
$pageR=$currentpage+3;
$_SESSION['search_pageR']=$pageR;
}
}
else{
$pageL=1;
$_SESSION['search_pageL']=$pageL;

if(($pageR-$currentpage)>=3){
$pageR=$currentpage+3;
$_SESSION['search_pageR']=$pageR;
}
}

}

for($i =$pageL; $i <= $pageR; $i++){
if( $i==$currentpage){
echo($i. " ");
}else{
echo("<a href=\"/Search/$searchString/page/$i/\">)". $i . "</a>");
}
}

if(($totalrows - ($limit*$currentpage )) > 0){
$pagenext = $currentpage +1;
echo("<a href=\"/Search/$searchString/page/$pagenext/\">NEXT</a>");
}
else{
echo("NEXT");
}

mysql_free_result($result);
mysql_free_result($totalrowsresult);

jatar_k

5:18 pm on May 3, 2008 (gmt 0)

WebmasterWorld Administrator 10+ Year Member



is there a blank line before your first <?php

a blank line before the opening tag would be considered output and cause headers to be sent

xbl01234

1:54 am on May 4, 2008 (gmt 0)

10+ Year Member



you are right, there is white line before that.

Thanks a lot.