I think I am going a bit nuts. I am following along with Kevin Yanks book on Build Your Own Database Driven Websites.
I have tried programming the examples myself as well as uploading the code archive to my localserver.
But I get the same warning with the following script
include_once $_SERVER['DOCUMENT_ROOT'] .
$pagetitle = 'New Author';
$action = 'addform';
$name = '';
$email = '';
$id = '';
$button = 'Add author';
include $_SERVER['DOCUMENT_ROOT'] . '/includes/db.inc.php';
$name = mysqli_real_escape_string($link, $_POST['name']);
$email = mysqli_real_escape_string($link, $_POST['email']);
$sql = "INSERT INTO author SET
if (!mysqli_query($link, $sql))
$error = 'Error adding submitted author.';
The warning that I get is
Warning: Cannot modify header information - headers already sent by (output started at /Applications/XAMPP/xamppfiles/htdocs/php/chapter4G/authors/index.php:1) in /Applications/XAMPP/xamppfiles/htdocs/php/chapter4G/authors/index.php on line 27
The code that I have pasted at the top of the page is the line 1 in my PHP file.
The header('Location: .'); is not in any other code.
Can someone help please.
Did you try to debug it? using things like:
output_buffering = On in php.ini
Also, your included PHP script is maybe sending the headers before your actual page?
This is an annoying error that happens all the time.. I often bypass it by overriding the standard header and setting it manually.. but of course finding the real problem and solving it is better..
Make sure nothing is above your initial PHP code (not even HTML) or try surrounding your PHP code with:
<? ob_start(); ?>
then at the bottom of the page place this line of code:
<? ob_flush(); ?>
Hope any of that helps
This topic is now closed. New replies are no longer allowed.