Problem ???? Don't know witch one?

PHP programming forum. Ask questions or help people concerning PHP code. Don't understand a function? Need help implementing a class? Don't understand a class? Here is where to ask. Remember to do your homework!

Moderator: General Moderators

Post Reply
User avatar
Skywalker
Forum Contributor
Posts: 117
Joined: Thu Aug 29, 2002 3:33 am
Location: The Netherlands

Problem ???? Don't know witch one?

Post by Skywalker »

This is the error

Warning: Cannot add header information - headers already sent by (output started at /home/sites/site57/web/gast2/sign.php:2) in /home/sites/site57/web/gast2/sign.php on line 85

Code: Select all

<?php

include("config.php");
if (isset($HTTP_POST_VARS)){
$result=1;
if($name==""){
$result=0;
$error1="<li>$no_name</li>";
}
if (!eregi("^.+@.+\\..+$", $email)){
$error2="<li>$mail_error</li>";
}
if($message==""){
$result=0;
$error3="<li>$no_message</li>";
}
elseif (strlen($message) <= $min_size) {
$error4="<li>$min_error</li>";
$result=0;
}
elseif (strlen($message) >= $max_size) {
$error5="<li>$max_error</li>";
$result=0;
}
$ip=$REMOTE_ADDR;
$bans=array(explode(",",$banlist));
foreach($bans as $banned_ip){
for($i=0;$i<=count($banned_ip);$i++){
if($ip==$banned_ip[$i]){
$result=0;
$error6="<li>$banned</li>";
}}}
if ($result==1){
if($inform==1){
$mailbody="$message\n";
$date=date("m/d/Y H:i:s");
$mailbody.="\nSERVER INFO---------\n";
$mailbody.="send date/time		: $date\n";
$mailbody.="Came From web		: $HTTP_HOST\n";
$mailbody.="Came from Ip number	: $ip\n";
mail ($mail,"$name has signed your guestbook",$mailbody,"From: $email\n");
}
$open=fopen($file,'a');
$date=date("D d M Y h:i:s");
$icon="<img src="$icons/$radio.gif">";
if($url==="http://"){
$url=ereg_replace("http://","",$url);
}
$message=ereg_replace("\r","<br>",$message);
$message=ereg_replace("\n","",$message);
$message=ereg_replace(":\)","<img src='$smiles/smile.gif'>",$message);
$message=ereg_replace(":\(","<img src='$smiles/sad.gif'>",$message);
$message=ereg_replace(":D","<img src='$smiles/laugh.gif'>",$message);
$message=ereg_replace("\;D","<img src='$smiles/hardlaugh.gif'>",$message);
$message=ereg_replace(":P","<img src='$smiles/tongue.gif'>",$message);
$message=ereg_replace("\;\)","<img src='$smiles/wink.gif'>",$message);
$message=ereg_replace(":o","<img src='$smiles/shocked.gif'>",$message);
$message=ereg_replace("8\)","<img src='$smiles/cool.gif'>",$message);
$message=ereg_replace("\=\)","<img src='$smiles/rolleyes.gif'>",$message);
$message=ereg_replace(":\-\[)","<img src='$smiles/embarassed.gif'>",$message);
$line="<!--BEGIN VAN BERICHT!-->";
$line1="<h5 align=left>$date</h5>";
$line2="<table width='500' align='left'><tr><td>Name :</td><td>$name</td></tr>";
$line3="<tr><td>Email :</td><td><a href='mailto:$email'>$email</a></td></tr>";
$line4="<tr><td>Url :</td><td><a href="$url">$url</a></td></tr>";
$line5="<tr><td valign=top>Message<br>$icon</td><td width='500'>$message</td></tr></table>";
$line6="<img src="line.gif" width="100%" height="2px">";
$line7="<!--EINDE VAN BERICHT!-->";
fputs($open,"$line");
fputs($open,"$line1");
fputs($open,"$line2");
fputs($open,"$line3");
fputs($open,"$line4");
fputs($open,"$line5");
fputs($open,"$line6");
fputs($open,"$line7");
fputs($open, "\n");
fclose($open);
if($keeplog==1){
$openlog=fopen($log,'a');
fputs($openlog,$line1);
fputs($openlog,"Name: $name. Ip number: $ip Server Ip: $SERVER_ADDR\n");
fclose($openlog);
}
header ("Location: $thank"); //this is line 85
}
if ($result!==1){
echo ("<body bgcolor=$back text=$text><title>$error_title</title>
<center><h2><font color='$h2'>$error_message</font></h2></center><ol>$error1$error2$error3$error4$error5$error6</ol></center></body>");
}}
else{
header ("Location: $sign");
}

?>


Greathings Skywalker :?:
User avatar
volka
DevNet Evangelist
Posts: 8391
Joined: Tue May 07, 2002 9:48 am
Location: Berlin, ger

Post by volka »

does config.php produce any output?
maybe a single linebreak outside <?php ... ?> ?
User avatar
Skywalker
Forum Contributor
Posts: 117
Joined: Thu Aug 29, 2002 3:33 am
Location: The Netherlands

Post by Skywalker »

This is the config file

Code: Select all

<?php

###########################################

$inform=0;							//write 1 if you want to be informed about signing your guestbook.
$mail='mymail@dony.com.kg';			//your email if you want to be informed about signing.
$file="messages.dat";				//messages page. Be sure chmod this file to 644 when uploading.
$sign="sign.htm";					//sign book page.
$thank="thank.htm";					//the page that thanks visitors for signing guestbook.
$title="My Guestbook";				//Title for guestbook.
$banlist="127.0.0.2,second,third,";	//if you do not want some ips to sign add them here.

//image directories.you can write url instead.

$icons="icons";			//icons directory.
$smiles="smiles";			//smiles directory

//some errors for visitors

$no_name="You forgot to write your name";		//If no name
$mail_error="please check your mail";		//if email is wrong.
$no_message="You forgot to write your message";	//If message is forgotten
$min_size="10";						//Minimum length of message
$max_size="1000";						//Maximum length of message
$max_error="Your message is too long";		//If message is long.
$min_error="Your message is too short";		//If message is short.
$banned="You cant send me message because you are BANNED!!";	//if banned.

//here is error page parameters.

$error_title="wrong parameters";		//title of page
$back='#0000cc';					//background of error page
$text='#000000';					//text colour of error page
$h2='#ccccc';					//heading colour of error page
$error_message="the folowing fields are wrong please check them.";	//message for visitor.


?>
User avatar
Skywalker
Forum Contributor
Posts: 117
Joined: Thu Aug 29, 2002 3:33 am
Location: The Netherlands

Post by Skywalker »

Problem is solved
Post Reply