2016-11-11 3 views
0

Я прочитал тему об этом заголовке, но не смог заставить его работать для моей программы. Раньше я удалял html и пространство, но все еще не вижу, что не так. файл connect.php предназначен для подключения к базе данных, и я использую файл app_config.php для вызова функции handle_error из файла connect.php для печати любой ошибки при попытке подключения к базе данных. Большое спасибо за вашу помощь!Невозможно изменить информацию заголовка - заголовки уже отправлены

Ошибка:

Предупреждение: Не удается изменить информацию в заголовке - заголовки уже прислал (выход начался в /home3/alfredbiz/public_html/phpMM/ch05/scripts/connect.php:1) в/home3 /alfredbiz/public_html/phpMM/ch05/app_config.php на линии 12

здесь connect.php

<?php 
//appel le fichier de mot de passe 
require_once '/home3/alfredbiz/public_html/phpMM/ch05/app_config.php'; 
require_once '/home3/alfredbiz/public_html/phpMM/ch05/app_connexion.php'; 

//database connexion 
$link = mysqli_connect(DATABASE_HOST, DATABASE_USERNAME, DATABASE_PASSWORD, DATABASE_NAME); 

// check connection 
if (!$link) { 
$user_error_message = "there was a problem connecting to the database that holds the information we need to get you connected."; 
$system_error_message = mysqli_connect_error(); 
handle_error($user_error_message, $system_error_message); 
} 

//editer les tables avec controle d erreur 
$result = mysqli_query($link, "show tables"); 
if(!$result){ 
    die("<p>Error in Listing tables: " .mysql_error() . "</p>"); 
} 
echo "<p> requette executee avec success</p>"; 
?> 

app_config.php

<?php 
//set up debug mode 
define("DEBUG_MODE", true); 

function debug_print($message) { 
if(DEBUG_MODE) { 
echo $message; 
    } 
} 

function handle_error($user_error_message, $system_error_message) { 
header("location: /home3/alfredbiz/public_html/phpMM/ch05/scripts/show_error.php?" ."error_message={$user_error_message}&" ."system_error_message= {$system_error_message}"); 
exit(); 
} 
?> 
+0

Посмотрите на свой выход. Перед этим сообщением об ошибке может быть строка. – aynber

+0

post config также., .. 'ob_start();' обычно делает трюк –

ответ

0

Это распространенная ошибка, вызванная спецификацией (байтовый заказ). Показателем для этого является тот факт, что вывод начался в строке 1.

См. Дублируемую тему How to fix "Headers already sent" error для разрешения.

+0

, как только я его конвертировал в UTF-8 с помощью блокнота ++. У меня есть эта ошибка. Предупреждение: не удается изменить информацию заголовка - уже отправлены заголовки (вывод запущен в/home3/alfredbiz /public_html/phpMM/ch05/scripts/connect.php:7) в /home3/alfredbiz/public_html/phpMM/ch05/app_config.php в строке 12 – Alfred

+0

все еще я не вижу никакого пространства или html в строке 7 – Alfred

+0

Пожалуйста, прочтите знак байтового заказа. – ChristianF

0

Вероятно, это эхо в файле app_config.php, что вызывает проблему. Как только вы отгоните что-нибудь, вы не сможете изменить информацию заголовка. Вы захотите переместить эхо, которое произойдет после заголовка() в функции handle_error.

+0

Я удалил echo в app_config, но не изменил – Alfred

Смежные вопросы