Я столкнулся с проблемой. Я изменил файл db.php, и, к сожалению, я помещал пробелы до и после тегов php. Я использовал это в файле image.php. Я получаю заголовок ошибки уже отправлен. Я знаю, что это из-за пространства в db.php, но я использовал ob_clean в image.php.
Ниже приведен код.
spaceishere<?php $con=mysql_connect("localhost", "username", "password") or die ('I cannot connect to the database because: ' . mysql_error()); mysql_select_db("dbname",$con) or die ("Cannot Connect to Database"); ?>andhere
Файл image.php содержит код
<?php require_once('db.php'); $sql="mysqlquery"; $query = mysql_query($sql); $row = mysql_fetch_assoc($query); ob_clean(); header("content-type:image/jpg") ; echo stripslashes($row[imagecolumn]); ?>
все отлично работает, когда я удалял пробелы в db.php. Но я не могу понять, почему мой ob_clean не работает.
Не могли бы вы объяснить, что кто-нибудь объяснит это. И я не хочу изменять файл db.php. Потому что у меня проблема. Это не проблема.
Я хочу сделать все мои изменения в image.php, чтобы он работал.
Пожалуйста, помогите по этому поводу.
Сначала вы должны начать буферизацию вывода, поставив вызов ob_start();
перед вашим включением.
Я думаю, это потому, что вы не находитесь в «php» -mode, поэтому php не знает, что что-то находится в выходном буфере, потому что он знает только то, что php анализирует и что внутри php-тегов. Поэтому в вашем случае пробелы находятся за пределами php-тега, поэтому php не знает об этом и не может «очистить» его.