Autor Zpráva
reSSet
Profil
dobrý deň..
chcel som si spraviť funkciu na webe BACK ktorá by ma niekde vracala teda:
function back($adresa) {
	header("Location: ".$adresa);
exit;
}


no ale problém nastane vždy keď túto funkciu vyvolám vypíše:
Warning: Cannot modify header information - headers already sent by (output started at c:\program files\easyphp1-8\www\php\core.php:26) in c:\program files\easyphp1-8\www\php\core.php on line 13

na line 13 v core.php je:
header("Location: ".$adresa);

a na riadku 26 v core.php je:
</head>";

.. to je súčasť tohto:
echo "<!DOCTYPE HTML PUBLIC '-//W3C//DTD HTML 4.01 Transitional//EN'>
<html>
<head>
<title>reSSet RS</title>
<meta http-equiv='Content-Type' content='text/html; charset=Windows-1250'>
<meta name='description' content='RS'>
<meta name='description' content='index.php'>
<meta name='keywords' content='php'>
<link rel='stylesheet' href='styles.css' type='text/css'>
</head>";

viete mi prosím Vás niekto poradiť ako to spraviť aby mi to fungovalo?
ďakujem
Nox
Profil
http://diskuse.jakpsatweb.cz/index.php?action=vthread&forum=9&topic=2111

případně ob_start/ob_end_flush
Pan X
Profil
reSSet
Napiš celý kód s tím headerem, musíme vidět kde je.
reSSet
Profil
no to je pekné ale tak polopatisticky? čo to znamená že hlavička má byť úplne na začiatku dokumentu a pred ňou nič alebo čo?
reSSet
Profil
ak myslíš header informácie tak tie sú v samostatnom dokum,ente .. nič neni pred nimi nič neni za nimi.. a mám všetko v index.php a na začiatku je
require_once "core.php";
require_once "header.php";

a v core mám všetky funkcie a definície a pripojenie na mysql a podobne a v tom header sú tie header informácie
Pan X
Profil
reSSet
Ano v některých případech ano. Proto nám sem dej celý kód, nebo alespoň od řádku 1 do toho místa kde je ten header
reSSet
Profil
index.php
<?php
require_once "core.php";
require_once "header_modify.php";

//update user
$db = mysql_fetch_array(mysql_query("SELECT * FROM users WHERE ip='".$_SERVER['REMOTE_ADDR']."'"));
if($db['online'] == "1"){

mysql_query("UPDATE users SET lastvisit='".time()."' WHERE id='".$db['id']."'");

}else{
echo "";
}

$ban_db = mysql_query("SELECT * FROM banned");
while($ban = mysql_fetch_array($ban_db)){

if($_SERVER['REMOTE_ADDR'] == $ban['ip']){
//fallback na zakaz.php !!
}
}

?>
<!--<div id="script_terminy"> </div>-->
<table width="960" align="center">
<script type="text/javascript">
function time_countdown()
{
var d0,d1,dd, n,d,h,m,s, tt, x,y;
d0 = new Date();
d1 = new Date("December 31, 2008");
dd = new Date();
dd = d1.getTime() - d0.getTime();
x = 0; y = 24*60*60*1000; d = Math.floor((dd-x)/y);
x+= d*y; y = 60*60*1000; h = Math.floor((dd-x)/y);
x+= h*y; y = 60*1000; m = Math.floor((dd-x)/y);
x+= m*y; y = 1000; s = Math.floor((dd-x)/y);
tt = d + " " + (d==1?"den": (d>1 && d<5?"dny" : "dní"));
tt+= " " + h + " " + (h==1?"hodinu": (h>1 && h<5?"hodiny" : "hodin"));
tt+= " " + m + " " + (m==1?"minutu": (m>1 && m<5?"minuty" : "minut"));
tt+= " " + s + " " + (s==1?"sekundu": (s>1 && s<5?"sekundy" : "sekund"));
t = "<span style='color:white'><font size='10'>Web spustený za " + tt + ".</span></font>";
document.getElementById("script_terminy").innerHTML = t;
}
time_countdown();
var time_countdown0 = setInterval("time_countdown()",1000);
</script>
<?php
$stranka = (isset($_GET['stranka']) ? $_GET['stranka'] : "novinky");

if($stranka == "novinky"){
echo "
<center><img src='images/header.jpg'></center>
<tr>
<td width='222' height='22' class='vrch'>Menu</td>
<td width='516' height='22' class='vrch-stred'>Novinky</td>
<td width='222' height='22' class='vrch'>".iPANEL."</td>
</tr>
<tr>
<td width='222' class='telo' valign='top'>";
include "lava.php";
echo "</td>
<td width='516' class='telo' valign='top'>";
include "novinky.php";
echo "</td>
<td width='222' class='telo' valign='top'>";
include "prava.php";
echo "</td>
</tr>
";

}


a v novinky.php mám podmienku že ak nie je online tak to hodí funckiu back na index.php

core.php
<?php
require_once "config.php";
$stranka = (isset($_GET['stranka']) ? $_GET['stranka'] : "0");



$zlozka = "";
while (!file_exists($zlozka."config.php")) { $zlozka .= "../"; }
define("ROOT", $zlozka);


function back($adresa) {
	header("Location: ".$adresa);
exit;
}
?>


header_modify.php
to som sem už písal tam sú iba header inform.
a v config.php je iba pripojenie na mysql
Pan X
Profil
Skus použít toto:
function back($adresa) {
    header("Location: ".$adresa."");
exit;
}
reSSet
Profil
nič stále to píše .. môžte mi niekto povedať čo má byť skôr? či tá funkcia alebo ten zápis tých header info
reSSet
Profil
ďakujem užnepotrebujem pmôcť zisil som kde je chyba .. ak by niekto nevedel pred hlavičku dajte ob_start(); a na koniec za </body></html> dajte ob_end_flush(); ;)) už mi to ide

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: