Hallo

Ik heb een probleempje:
sinds een paar dagen krijg ik deze warning:

Warning: Cannot modify header information - headers already sent by (output started at /var/server/www/arwin.colddot.nl/gastenboek.php:174) in /var/server/www/arwin.colddot.nl/menu.php on line 25

Ze staan op deze websites:
http://www.arwin.colddot.nl/gastenboek.php
http://www.arwin.colddot.nl/links.php
http://www.arwin.colddot.nl/poll.php?showresults=yes

Weet iemand hoe ik dit moet oplossen?

De menu balk zit in alle pagina's in een include.

Groetjes van Arwim

Ja, ik weet hoe je dit moet oplossen.
Geen enkele header naar de browser sturen voordat je de headers stuurt, in gastenboek.php op regel 174 stuur jij blijkbaar al een output naar de browser.
[faq]PHP faq[/faq]
@mebus
De zoekfunctie is welliswaar ofline, maar is nooit goed geweest, zelfs toen deze nog online was gebruikte ik Google om de site te doorzoeken, Google heeft een handig keyword voor als je 1 specifieke site wilt door zoeken: "site:", dus wat je doet is "zoekwoord site:http://www.phphulp.nl/"; en als je alleen scripts/boeken/tuts wilt moet je nog even achter de url zetten: php/
@Gijs (Armorad)

Maar dat kan niet want op regel 174 staat dit:

<img style="margin: 1px" onMouseover="this.style.cursor='pointer'" onClick="sendtext(document.addbericht.bericht, ':angry')" src="images/smilies/angry.gif" alt="Emoticon"><br />

Kan het temaken hebben met dat ik includes gebruik?
Gastenboek.php :

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">;
<html>
<head>
<title>Welkom op Arwin.ColdDot.nl</title>
<link href='http://www.arwin.colddot.nl/css/opmaak.css'; rel='stylesheet' type='text/css'>
<script type="text/javascript" src="http://www.arwin.colddot.nl/css/java.js"></script>;
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<script src="css/scripts.js" type="text/javascript"></script>
<link rel="stylesheet" type="text/css" href="css/style.css">
</head>
<body>


<div align='center'>
<table width='740' align='center' border='1' style='border-collapse: collapse' cellpadding='0' cellspacing='0' bordercolor='#000000'>
<tr>
<td>
<div align='center'>
<table width="99%" border="0" cellspacing="0" cellpadding="10">
<tr> <table border='0' cellpadding='0' cellspacing='0' class='table'>
<tr>

<th border='0' cellpadding='0' cellspacing='0' width="18%" scope="col"><div class="logo"></div></th>



<th width="82%" style="border-collapse: collapse" rowspan="2" scope="col" valign="top"><div align="left" >
<table class="inhoud"><tr><td><b>Welkom op Arwin.coldDot.nl</b>
<br> <br>
Op deze website kan je een heleboel vinden zoals :
<?

$link[0]="<a href=\"http://www.arwin.colddot.nl/nieuws.php\">De laatste updates van de website</a>";
$link[1]="<a href=\"http://www.arwin.colddot.nl\">Informatie over de Webmaster</a>";
$link[2]="<a href=\"http://www.arwin.colddot.nl/links.php\">De Links</a>";
$link[3]="<a href=\"http://www.arwin.colddot.nl/gastenboek.php\">Het gastenboek</a>";
$link[4]="<a href=\"http://www.arwin.colddot.nl/poll.php\">Een poll</a>";
$link[5]="<a href=\"http://www.arwin.colddot.nl/contact.php\">Contact formulier</a>";
$link[6]="<a href=\"http://www.arwin.colddot.nl/fun/foto\">Leuke foto's</a>";

$random = rand(0, count($link)-1);

echo $link[$random];

?>


,
<?

$link[0]="<a href=\"http://www.arwin.colddot.nl/fun/filmpjes\">Leuke filmpjes</a>";
$link[1]="<a href=\"http://www.arwin.colddot.nl/fun/games\">Games</a>";;
$link[2]="<a href=\"http://www.arwin.colddot.nl/forum\">Het hele kleine forum</a>";
$link[3]="<a href=\"http://www.arwin.colddot.nl/downloadsp.php\">Programma's downloaden</a>";
$link[4]="<a href=\"http://www.arwin.colddot.nl/downloadsg.php\">Games demo's downloaden</a>";
$link[5]="<a href=\"http://www.arwin.colddot.nl/engels\">Engelse versie van deze websitet</a>";
$link[6]="<a href=\"http://www.arwin.colddot.nl/upload.php\">Foto's uploaden</a>";
$random = rand(0, count($link)-1);

echo $link[$random];

?>
<br> en nog veel meer
<br>

<br>
Verder wens ik u veel plezier op Arwin.ColdDot.nl<br>
<br></td></tr></table>
<table class="inhoud"><tr><td> <?php include 'bbalk/weergeven.php';
echo berichtenbalk('bbalk/');
?></td></tr></table>
<table class="inhoud"><tr><td>



<?php

// Database gegevens includen.
include('dbconnect.php');

$ip = $_SERVER['REMOTE_ADDR'];

// Alternating row kleuren.
$color1 = "#EBEBEB";
$color2 = "#C4C4C4";
$row_count = 0;

// Het indelen in pagina's.
$max_b = "10";
$result = mysql_query("SELECT COUNT(id) FROM gastenboek");
$aantal = mysql_result($result, 0);
$paginas = ceil($aantal/$max_b);

// Als p ingesteld is, stel dan start waarde in.
if(isset($_GET['p'])) {
// Kijken of p nummeriek is.
if(is_numeric($_GET['p'])) {
$page = $_GET['p'];
$start = addslashes(($_GET['p']-1)*$max_b);
}
else {
$page = 1;
$start = 0;
}
}
else {
$page = 1;
$start = 0;
}

// Pagina links maken.
$p = "";
for($a = 1; $a <= $paginas; $a++) {
// Kijken of dit de huidige pagina is
if($page == $a) {
$p .= $a.' ';
}
// Is het dan niet dan word het een linkje
else {
$p .= '<a href="gastenboek.php?p='.$a.'">'.$a.'</a> ';
}
}

// Haal de berichten op.
$sql_g = "SELECT * FROM gastenboek ORDER BY datum DESC LIMIT ".$start." , ".$max_b."";
$res_g = mysql_query($sql_g);

echo "Welkom in het gastenboek<br /><br /><hr>";
echo "".$p."<hr>";

// Laat alle berichten zien.
if (mysql_num_rows($res_g) >= 1) {
echo "<table width=\"500\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">";
while ($row = mysql_fetch_array($res_g)) {
$bericht = $row['bericht'];
$g_datum = $row['datum'];
$g_auteur = $row['auteur'];
$g_email = $row['email'];
$row_color = ($row_count % 2) ? $color1 : $color2;


// Als er geen emailadres is, dan word er geen link gemaakt.
if(empty($g_email)){
$auteurmail = "".$g_auteur."";
}
else {
$auteurmail = "<a href=\"mailto:".$g_email."\">".$g_auteur."</a>";
}
// Het bericht.
echo "<tr><td style=\"border-bottom: 1px solid Black; padding: 5px\" bgcolor=\"$row_color\">";
echo "<b>".$auteurmail."</b> op ".$g_datum."<br />";
echo "".$bericht."<br /></td></tr>";

$row_count++;
}
echo "</table>";
}
else {
echo "Er zijn geen berichten in het gastenboek<br /><br />";
}

// Laat het formulier zien.
?>
<hr><br /><form method="post" name="addbericht" action="bericht.php">
<input type="hidden" value="<?php echo "".$ip."" ?>" name="ip">
Naam:<br /><input type="text" name="auteur"><br />
Email:<br /><input type="text" name="email"><br />
Bericht:<br /><table border="0" cellpadding="0" cellspacing="0"><tr><td><textarea rows="4" name="bericht" cols="22"></textarea></td><td style="width: 5px"></td>
<td><img style="margin: 1px; margin-left: 0px" onMouseover="this.style.cursor='pointer'" onClick="sendtext(document.addbericht.bericht, ':)')" src="images/smilies/smile.gif" alt="Emoticon">
<img style="margin: 1px" onMouseover="this.style.cursor='pointer'" onClick="sendtext(document.addbericht.bericht, ':D')" src="images/smilies/biggrin.gif" alt="Emoticon">
<img style="margin: 1px" onMouseover="this.style.cursor='pointer'" onClick="sendtext(document.addbericht.bericht, ':p')" src="images/smilies/tongue.gif" alt="Emoticon">
<img style="margin: 1px" onMouseover="this.style.cursor='pointer'" onClick="sendtext(document.addbericht.bericht, ':(')" src="images/smilies/sad.gif" alt="Emoticon">
<img style="margin: 1px" onMouseover="this.style.cursor='pointer'" onClick="sendtext(document.addbericht.bericht, ';)')" src="images/smilies/wink.gif" alt="Emoticon">
<img style="margin: 1px" onMouseover="this.style.cursor='pointer'" onClick="sendtext(document.addbericht.bericht, ':angry')" src="images/smilies/angry.gif" alt="Emoticon"><br />
<img style="margin: 1px; margin-left: 0px" onMouseover="this.style.cursor='pointer'" onClick="sendtext(document.addbericht.bericht, ':roll')" src="images/smilies/rolleyes.gif" alt="Emoticon">
<img style="margin: 1px" onMouseover="this.style.cursor='pointer'" onClick="sendtext(document.addbericht.bericht, ':kiss')" src="images/smilies/kiss.gif" alt="Emoticon">
<img style="margin: 1px" onMouseover="this.style.cursor='pointer'" onClick="sendtext(document.addbericht.bericht, ':cool')" src="images/smilies/cool.gif" alt="Emoticon">
<img style="margin: 1px" onMouseover="this.style.cursor='pointer'" onClick="sendtext(document.addbericht.bericht, ':cry')" src="images/smilies/cry.gif" alt="Emoticon">
<img style="margin: 1px" onMouseover="this.style.cursor='pointer'" onClick="sendtext(document.addbericht.bericht, ':huh')" src="images/smilies/huh.gif" alt="Emoticon">
<img style="margin: 1px" onMouseover="this.style.cursor='pointer'" onClick="sendtext(document.addbericht.bericht, ':omg')" src="images/smilies/omg.gif" alt="Emoticon"><br /><br />
<a href="javascript:popup('bbcodes.html')">BBcode</a> is ON<br />HTML is OFF</td></tr></table><br />
<input type="submit" value="Verzenden" name="submit">
</td></tr></table>
</div></th>
</tr>
<tr>
<th scope="row">
<?php
include("menu.php");
?>
</th>
</tr>
</table>
</form>
</body>
</html>
idd, je includes meetellen

include is eigenlijk onderdeel van de pagina waarin je hem include, maar het staat alleen ergens anders. zo moet je het een beetje zien. waarschijnlijk staat er ergens in bbalkweergeven.php of dbconnect.php een header(vanheteenofander) .

edit: of menu.php
Dan word het zoiets als ik de includes weglaat en daar gewoon de pagina neer zet.

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">;
<html>
<head>
<title>Welkom op Arwin.ColdDot.nl</title>
<link href='http://www.arwin.colddot.nl/css/opmaak.css'; rel='stylesheet' type='text/css'>
<script type="text/javascript" src="http://www.arwin.colddot.nl/css/java.js"></script>;
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<script src="css/scripts.js" type="text/javascript"></script>
<link rel="stylesheet" type="text/css" href="css/style.css">
</head>
<body>


<div align='center'>
<table width='740' align='center' border='1' style='border-collapse: collapse' cellpadding='0' cellspacing='0' bordercolor='#000000'>
<tr>
<td>
<div align='center'>
<table width="99%" border="0" cellspacing="0" cellpadding="10">
<tr> <table border='0' cellpadding='0' cellspacing='0' class='table'>
<tr>

<th border='0' cellpadding='0' cellspacing='0' width="18%" scope="col"><div class="logo"></div></th>



<th width="82%" style="border-collapse: collapse" rowspan="2" scope="col" valign="top"><div align="left" >
<table class="inhoud"><tr><td><b>Welkom op Arwin.coldDot.nl</b>
<br> <br>
Op deze website kan je een heleboel vinden zoals :
<?

$link[0]="<a href=\"http://www.arwin.colddot.nl/nieuws.php\">De laatste updates van de website</a>";
$link[1]="<a href=\"http://www.arwin.colddot.nl\">Informatie over de Webmaster</a>";
$link[2]="<a href=\"http://www.arwin.colddot.nl/links.php\">De Links</a>";
$link[3]="<a href=\"http://www.arwin.colddot.nl/gastenboek.php\">Het gastenboek</a>";
$link[4]="<a href=\"http://www.arwin.colddot.nl/poll.php\">Een poll</a>";
$link[5]="<a href=\"http://www.arwin.colddot.nl/contact.php\">Contact formulier</a>";
$link[6]="<a href=\"http://www.arwin.colddot.nl/fun/foto\">Leuke foto's</a>";

$random = rand(0, count($link)-1);

echo $link[$random];

?>


,
<?

$link[0]="<a href=\"http://www.arwin.colddot.nl/fun/filmpjes\">Leuke filmpjes</a>";
$link[1]="<a href=\"http://www.arwin.colddot.nl/fun/games\">Games</a>";;
$link[2]="<a href=\"http://www.arwin.colddot.nl/forum\">Het hele kleine forum</a>";
$link[3]="<a href=\"http://www.arwin.colddot.nl/downloadsp.php\">Programma's downloaden</a>";
$link[4]="<a href=\"http://www.arwin.colddot.nl/downloadsg.php\">Games demo's downloaden</a>";
$link[5]="<a href=\"http://www.arwin.colddot.nl/engels\">Engelse versie van deze websitet</a>";
$link[6]="<a href=\"http://www.arwin.colddot.nl/upload.php\">Foto's uploaden</a>";
$random = rand(0, count($link)-1);

echo $link[$random];

?>
<br> en nog veel meer
<br>

<br>
Verder wens ik u veel plezier op Arwin.ColdDot.nl<br>
<br></td></tr></table>
<table class="inhoud"><tr><td> <?php

function berichtenbalk($sMap)
{
include $sMap.'admin/config.php';
include $sMap.'smilies.php';
include $sMap.'smilie.php';
include $sMap.'messages.php';

if(empty($array))
{
return 'Er zijn geen berichten';
}
else
{
if($vooraan == 'oude')
{
ksort($array);
}
else
{
krsort($array);
}

unset($echo_back);

foreach($array as $key => $array2)
{
if(!empty($array2))
{
$de_naam = smilie($arraynaam[$key], $smilie, $smilieverplaats, $DeMap);
$het_bericht = smilie($array[$key], $smilie, $smilieverplaats, $DeMap);

$echo_back .= '<b>'.stripslashes($de_naam).':</b> '.stripslashes($het_bericht).' '.$scheiding.' ';
}
}
return '<script language="javascript" src="./'.$sMap.'/javascript.js" type="text/javascript"></script> <font face="verdana" size=2><marquee width="75%">'.$echo_back.'</marquee> <a href="javascript:popUp2(\''.$sMap.'voegtoe.php\');">[Voeg bericht toe]</a>';
}
}

?></td></tr></table>
<table class="inhoud"><tr><td>



<?php

$gebruiker = "****";
$wachtwoord = "****";
$database = "****";
$host = "****";

mysql_connect($host, $gebruiker, $wachtwoord) or die("Er is geen connectie met de database");
mysql_select_db($database) or die("Er is geen database geselecteerd");


$ip = $_SERVER['REMOTE_ADDR'];

// Alternating row kleuren.
$color1 = "#EBEBEB";
$color2 = "#C4C4C4";
$row_count = 0;

// Het indelen in pagina's.
$max_b = "10";
$result = mysql_query("SELECT COUNT(id) FROM gastenboek");
$aantal = mysql_result($result, 0);
$paginas = ceil($aantal/$max_b);

// Als p ingesteld is, stel dan start waarde in.
if(isset($_GET['p'])) {
// Kijken of p nummeriek is.
if(is_numeric($_GET['p'])) {
$page = $_GET['p'];
$start = addslashes(($_GET['p']-1)*$max_b);
}
else {
$page = 1;
$start = 0;
}
}
else {
$page = 1;
$start = 0;
}

// Pagina links maken.
$p = "";
for($a = 1; $a <= $paginas; $a++) {
// Kijken of dit de huidige pagina is
if($page == $a) {
$p .= $a.' ';
}
// Is het dan niet dan word het een linkje
else {
$p .= '<a href="gastenboek.php?p='.$a.'">'.$a.'</a> ';
}
}

// Haal de berichten op.
$sql_g = "SELECT * FROM gastenboek ORDER BY datum DESC LIMIT ".$start." , ".$max_b."";
$res_g = mysql_query($sql_g);

echo "Welkom in het gastenboek<br /><br /><hr>";
echo "".$p."<hr>";

// Laat alle berichten zien.
if (mysql_num_rows($res_g) >= 1) {
echo "<table width=\"500\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">";
while ($row = mysql_fetch_array($res_g)) {
$bericht = $row['bericht'];
$g_datum = $row['datum'];
$g_auteur = $row['auteur'];
$g_email = $row['email'];
$row_color = ($row_count % 2) ? $color1 : $color2;


// Als er geen emailadres is, dan word er geen link gemaakt.
if(empty($g_email)){
$auteurmail = "".$g_auteur."";
}
else {
$auteurmail = "<a href=\"mailto:".$g_email."\">".$g_auteur."</a>";
}
// Het bericht.
echo "<tr><td style=\"border-bottom: 1px solid Black; padding: 5px\" bgcolor=\"$row_color\">";
echo "<b>".$auteurmail."</b> op ".$g_datum."<br />";
echo "".$bericht."<br /></td></tr>";

$row_count++;
}
echo "</table>";
}
else {
echo "Er zijn geen berichten in het gastenboek<br /><br />";
}

// Laat het formulier zien.
?>
<hr><br /><form method="post" name="addbericht" action="bericht.php">
<input type="hidden" value="<?php echo "".$ip."" ?>" name="ip">
Naam:<br /><input type="text" name="auteur"><br />
Email:<br /><input type="text" name="email"><br />
Bericht:<br /><table border="0" cellpadding="0" cellspacing="0"><tr><td><textarea rows="4" name="bericht" cols="22"></textarea></td><td style="width: 5px"></td>
<td><img style="margin: 1px; margin-left: 0px" onMouseover="this.style.cursor='pointer'" onClick="sendtext(document.addbericht.bericht, ':)')" src="images/smilies/smile.gif" alt="Emoticon">
<img style="margin: 1px" onMouseover="this.style.cursor='pointer'" onClick="sendtext(document.addbericht.bericht, ':D')" src="images/smilies/biggrin.gif" alt="Emoticon">
<img style="margin: 1px" onMouseover="this.style.cursor='pointer'" onClick="sendtext(document.addbericht.bericht, ':p')" src="images/smilies/tongue.gif" alt="Emoticon">
<img style="margin: 1px" onMouseover="this.style.cursor='pointer'" onClick="sendtext(document.addbericht.bericht, ':(')" src="images/smilies/sad.gif" alt="Emoticon">
<img style="margin: 1px" onMouseover="this.style.cursor='pointer'" onClick="sendtext(document.addbericht.bericht, ';)')" src="images/smilies/wink.gif" alt="Emoticon">
<img style="margin: 1px" onMouseover="this.style.cursor='pointer'" onClick="sendtext(document.addbericht.bericht, ':angry')" src="images/smilies/angry.gif" alt="Emoticon"><br />
<img style="margin: 1px; margin-left: 0px" onMouseover="this.style.cursor='pointer'" onClick="sendtext(document.addbericht.bericht, ':roll')" src="images/smilies/rolleyes.gif" alt="Emoticon">
<img style="margin: 1px" onMouseover="this.style.cursor='pointer'" onClick="sendtext(document.addbericht.bericht, ':kiss')" src="images/smilies/kiss.gif" alt="Emoticon">
<img style="margin: 1px" onMouseover="this.style.cursor='pointer'" onClick="sendtext(document.addbericht.bericht, ':cool')" src="images/smilies/cool.gif" alt="Emoticon">
<img style="margin: 1px" onMouseover="this.style.cursor='pointer'" onClick="sendtext(document.addbericht.bericht, ':cry')" src="images/smilies/cry.gif" alt="Emoticon">
<img style="margin: 1px" onMouseover="this.style.cursor='pointer'" onClick="sendtext(document.addbericht.bericht, ':huh')" src="images/smilies/huh.gif" alt="Emoticon">
<img style="margin: 1px" onMouseover="this.style.cursor='pointer'" onClick="sendtext(document.addbericht.bericht, ':omg')" src="images/smilies/omg.gif" alt="Emoticon"><br /><br />
<a href="javascript:popup('bbcodes.html')">BBcode</a> is ON<br />HTML is OFF</td></tr></table><br />
<input type="submit" value="Verzenden" name="submit">
</td></tr></table>
</div></th>
</tr>
<tr>
<th scope="row">
<?php
include("menu.php");
?>
</th>
</tr>
</table>
</form>
</body>
</html>
Er mag helemaal niks naar de browser gestuurd worden vóór de headers. Dus ook geen spatie of html.
dus ik moet alle spatie's gaan weghalen.
En wat moet ik met de html codes doen??
In een echo zetten?
Een echo spuugt ook uit naar de browser, dus die kan je ook niet gebruiken.

Wat je moet doen is alle header informatie naar de browser sturen voor dat je ook maar aan een echo of print denkt...

Elwin

Reageren