Проблем с хедъра (Cannot modify header information )

rutera24

Registered
Може ли да помогнете за този код.Аз лично не мога да се сетя какво се бърка.
Warning: Cannot modify header information
Код:
<?php 
// проверява дали ID-то е взето 
if (isset($_GET['id']) && is_numeric($_GET['id'])) { 

// Свързване с БД-то 
require_once('mysql_connect.php'); 

$id = mysql_real_escape_string($_GET['id']); 

// Добавя +1 към брояча на гласове 
$query = "UPDATE websites SET hits = hits + 1 WHERE id = $id"; 
$result = mysql_query($query) OR die(mysql_error()); 

unset($query); 
unset($result); 

$query = "SELECT id, url FROM websites WHERE id = $id"; 
$result = mysql_query($query) OR die(mysql_error()); 

$row = mysql_fetch_array($result, MYSQL_ASSOC); 
$num = mysql_num_rows($result); 
$url = $row['url']; 

if ($num > 0) {
header("Refresh: 0; url=$url");   <<<----------
} else { 
echo '<font color="red">Няма такъв сайт.</font>'; 
} 
} else { 
echo '<font color="red">Трябва да избереш сайт да посетиш!</font>'; 
} 
?>
 
header("Location: index.php" , true);
Слагаш си връзката към страницата или ползвай
echo "<meta http-equiv=\"Refresh\" content=\"0; URL=index.php\"/>";:)
 
PHP:
<?php
// проверява дали ID-то е взето
if (isset($_GET['id']) && is_numeric($_GET['id'])) {

// Свързване с БД-то
require_once('mysql_connect.php');

$id = mysql_real_escape_string($_GET['id']);

// Добавя +1 към брояча на гласове
$query = "UPDATE websites SET hits = hits + 1 WHERE id = $id";
$result = mysql_query($query) OR die(mysql_error());

unset($query);
unset($result);

$query = "SELECT id, url FROM websites WHERE id = $id";
$result = mysql_query($query) OR die(mysql_error());

$row = mysql_fetch_array($result, MYSQL_ASSOC);
$num = mysql_num_rows($result);
$url = $row['url'];

if ($num > 0) {
header("Location: ' . $url . '"); 
} else {
echo '<font color="red">Няма такъв сайт.</font>';
}
} else {
echo '<font color="red">Трябва да избереш сайт да посетиш!</font>';
}
?>

втория вариянт е да дадеш реда на който грешката.
можеби си забравил session_start();
 
goshkoy каза:
PHP:
<?php
// проверява дали ID-то е взето
if (isset($_GET['id']) && is_numeric($_GET['id'])) {

// Свързване с БД-то
require_once('mysql_connect.php');

$id = mysql_real_escape_string($_GET['id']);

// Добавя +1 към брояча на гласове
$query = "UPDATE websites SET hits = hits + 1 WHERE id = $id";
$result = mysql_query($query) OR die(mysql_error());

unset($query);
unset($result);

$query = "SELECT id, url FROM websites WHERE id = $id";
$result = mysql_query($query) OR die(mysql_error());

$row = mysql_fetch_array($result, MYSQL_ASSOC);
$num = mysql_num_rows($result);
$url = $row['url'];

if ($num > 0) {
header("Location: ' . $url . '"); 
} else {
echo '<font color="red">Няма такъв сайт.</font>';
}
} else {
echo '<font color="red">Трябва да избереш сайт да посетиш!</font>';
}
?>

втория вариянт е да дадеш реда на който грешката.
можеби си забравил session_start();


Благодаря на всички и да сесията беше забравена :)

goshkoy +1 Благодаря
 

Back
Горе