Forum » » Le coin des codeurs » » Pb de Headers !!!
Posté : 2 juil. 2003 à 11:11 
J'ai toujours un probleme de compteur qui ne marche pas
le message d'erreur est le suivant
Warning: Cannot add header information - headers already sent by (output started at c:\program files\easyphp\www\plib\counter\compteur.php:2) in c:\program files\easyphp\www\plib\counter\compteur.php on line 17
et le script et le suivant :
<html>
<?
//compteur.php
//compteur graphique d'accès au pages
define("NB_CHIF",5); //nombre de chiffres du compteur
define("FONTE",5); //fonte utilisée
//envoie d'une image contenant le texte de la chaine $str (et fin du prog)
function envoi_image($str){
$str=str_pad(substr($str,0,NB_CHIF),NB_CHIF,"0",STR_PAD_LEFT);
$image=Imagecreate(NB_CHIF * ImageFontWidth(FONTE),ImageFontHeight(FONTE));
$bg=ImageColorAllocate($image,255,0,0);
ImageString($image,FONTE,0,0,$str,ImageColorAllocate($image,255,255,255));
Header("Expires : 1 1 1970 12:00:00 GMT"); //pour forcer le rechargement
header("Content-Type : image/png"); //type MIME envoyé
ImagePng($image);
exit;
}
//on logue dans la base la page appelante
$ref_page=strtok($_SERVER["HTTP_REFERER"],"?");
if (empty($ref_page)){
envoi_image("reference ?"); //page appelante non définie
}
//connexion à Mysql
if(!($link=@mysql_pconnect("localhost","compteur",""))){
envoi_image("connexion ?"); //connexion impossible
}
//connexion à la base
if (!($query=@mysql_select_db("bdplib"))){
envoi_image("base ?");
}
//recherche du nombre d'accès dans la base comptage
if (!($query=@mysql_query("SELECT * FROM log WHERE page='".addslashes($ref_page)."';"))){
envoi_image("requete ?");
}
if (@mysql_num_rows($query)==0){
@mysql_query("INSERT INTO log (nombre,page) VALUES(1,'".addslashes($ref_page)."');");
envoie_image(1);
}
$arr=@mysql_fetch_array($query);
$n=$arr["nombre"];
@mysql_query("UPDATE log SET nombre = nombre + 1 WHERE page ='".addslashes($ref_page)."';");
envoie_image($n);
?>
</html>
Aidez moi SVp
Cet article provient de NPDS
https://www.npds.org/viewtopic.php?topic=6434&forum=5