Autor Zpráva
RuMeC
Profil *
Zdravim,

skusil jsem udelat graf podle http://www.ultramix.com.br/phpinfo/artigos.php?id_artigo=1e
a dopadlo to takto:
http://www.vsevjednom.eu/graf.php


nevite kde je chyba ???
Fibi
Profil *
První nástřel , máš tam i ten řádek s hlavičkou ? header("Content-type: image/gif"); (podle typu obrázku který generuješ) . Musí být hned na začátku.
RuMeC
Profil *
skusil jsem ale nic se nestalo ... na localhostu me to hodi chybu na radku

$width = 480;
$height = 250;
$image = imagecreate($width, $height);
Fatal error: Call to undefined function: imagecreate()


a na ftp porad stejny vysledek ...
Fibi
Profil *
Hmm na localhostu zdá se tedy nemáš dostupnou tu funkci, musíš si ji tam dostat. (asi překompilovat PHPko , doplnit knihovnu GD ... )
A tu hlavičku máš správnou ? Poslal jsem opsanou z toho příkladu, ale vypadá to že ty generuješ jpeg, pak je ta hlavička : header("Content-type: image/jpeg"); Tady ta hlavička musí být na začátku scriptu, před ní se nesmí nic generovata za ní musí být jen obrazová data .
RuMeC
Profil *
no stim localem sem si to myslel ...
no mam tam

<?PHP
header("Content-type: image/jpeg");

$data = array(
"Led" => 54,
"Uno" => 21,
"Bře" => 23,
"Dub" => 14,
"Kvě" => 52,
"Čer" => 54,
"Črc" => 69,
"Srp" => 33,
"Zář" => 23,
"Říj" => 12,
"Lis" => 51,
"Pro" => 82);

atd...
tiso
Profil
Netráp sa, use google: http://code.google.com/apis/chart/
AlešD
Profil
tiso
Předběhl jsi mě.
RuMeC
Profil *
ehm nic proti ale toto si na web NEDAM http://code.google.com/apis/chart/ ...
Alphard
Profil
RuMeC
dej si do pořádku hlavičky, uložil jsem výstup z http://www.vsevjednom.eu/graf.php, přejmenoval na graf.jpg a IrfanView to bez problémů otevřel (modrý sloupcový graf)
tiso
Profil
RuMeC - nenútim, chápem...
RuMeC
Profil *
Alphard

co sa ti nelibi na hlavičce ???
Alphard
Profil
co sa ti nelibi na hlavičce ???
nevím, jen ti říkám, kde je asi problém
graf se generuje správně, jen se zobrazí rozsypaný čaj
RuMeC
Profil *
Alphard

a nevíš jak udělat ztoho rozsypaneho čaje obrazek ???
Alphard
Profil
RuMeC
zajímavý problém, když jsi to měl přejmenované na graf.jpg, tak jsem to celé stáhl :-) zkusil spustit a fungujemi to
takže, možná by mohl být nějaký problém s nastavením serveru
tu hlavičku zase vymaž (nebo zakomentuj) a podívej se, jestli to nevypíše nějakou chybovou hlášku
RuMeC
Profil *
nic me to nevypise ...
sem so skusil aj na free hostingu od ic.cz ...
tam me tonehodi žadny čaj ale misto obrazku je tam http://www.adresa.ic.cz/graf.php ....
Alphard
Profil
nevím už, nakopíruji sem kód, který mi funguje, tj. vygeneruje graf
<?PHP
$data = array(
"Led" => 54,
"Uno" => 21,
"Bře" => 23,
"Dub" => 14,
"Kvě" => 52,
"Čer" => 54,
"Črc" => 69,
"Srp" => 33,
"Zář" => 23,
"Říj" => 12,
"Lis" => 51,
"Pro" => 82);

//vytvorime obrazek
$width = 480;
$height = 250;
$image = imagecreate($width, $height);

//barvy
$white = imagecolorallocate($image, 0xFF, 0xFF, 0xFF);
$navy = imagecolorallocate($image, 0x00, 0x00, 0x80);
$black = imagecolorallocate($image, 0x00, 0x00, 0x00);
$gray = imagecolorallocate($image, 0xC0, 0xC0, 0xC0);

//layout
$maxval = max($data);
$nval = sizeof($data);

$vmargin =20;
$hmargin =38;

$base = floor(($width - $hmargin) / $nval);

$ysize = $height - 2 * $vmargin;
$xsize = $nval * $base;


$titlefont = 3;
$title = "Statistiky za rok 2007";
$txtsz = imagefontwidth($titlefont) * strlen($title);
$xpos = (int)($hmargin + ($xsize - $txtsz)/2);
$xpos = max(1, $xpos);
$ypos = 3;
imagestring($image , $titlefont , $xpos , $ypos , $title , $black);

$labelfont = 2;
$ngrid = 4;

$dydat = $maxval / $ngrid;
$dypix = $ysize / ($ngrid + 1);


for ($i = 0; $i <= ($ngrid + 1); $i ++){

	$ydat = (int)($i * $dydat);
	$ypos = $vmargin + $ysize - (int)($i * $dypix);
	
	$txtsz = imagefontwidth($labelfont) * strlen($ydat);
	$txtht = imagefontheight($labelfont);
	
	$xpos = (int)(($hmargin - $txtsz) / 2);
	$xpos = max(1, $xpos);
	
	imagestring($image, $labelfont, $xpos, $ypos - (int)($txtht/2), $ydat, $black);
	
		if(!($i == 0) && !($i > $ngrid)){
			imageline($image, $hmargin - 3, $ypos, $hmargin + $xsize, $ypos, $gray);
		}
}

$padding = 3;
$yscale = $ysize / (($ngrid + 1) * $dydat);

for ($i = 0; list($xval, $yval) = each($data); $i ++){
	
	$ymax = $vmargin + $ysize;
	$ymin = $ymax - (int)($yval * $yscale);
	$xmax = $hmargin + ($i + 1) * $base - $padding;
	$xmin = $hmargin + $i * $base + $padding;
	
	imagefilledrectangle($image, $xmin, $ymin, $xmax, $ymax, $navy);
	
	$txtsz = imagefontwidth($labelfont) * strlen($xval);
	$xpos = $xmin + (int)(($base - $txtsz) /2);
	$xpos = max($xmin, $xpos);
	$ypos = $ymax + 3;
	imagestring($image, $labelfont, $xpos, $ypos, $xval, $black);
}

imagerectangle($image, $hmargin, $vmargin, $hmargin + $xsize, $vmargin + $ysize, $black);


header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
header("Cache-Control: no-store, no-cache, must-revalidate");
header("Cache-Control: post-check=0, pre-check=0", false);
header("Pragma: no-cache");
header("Content-type: image/jpeg");

imagejpeg($image);
imagedestroy($image);
?>
RuMeC
Profil *
skusil jsem to na 4 hostincich a nic ... nemože to byt nastavenim hostingu ... teda nastavenim gd knihovny ???
tiso
Profil
RuMeC - web-sniffer tvrdí o tých hlavičkách niečo iné... Možno je nejaký problém s nastavením serveru. Vyskúšaj si cez túto službu zobraziť
súbor typu obrázok a potom skúšaj pomocou PHP len generovať hlavičky, či to naozaj ide.
RuMeC
Profil *
no tak nastaveni sereru tak to mozeme vyloucit jelikoz antispam je me jede vpoho na serveru ... http://www.vsevjednom.eu/bazar_nova_verze/antispam/generator.php
tiso
Profil
RuMeC nájdi 5 rozdielov: antispam vs. graf
RuMeC
Profil *
je tam dost rozdilu ...

ale v antispamu i v grafu mam definovanou hlavicku stejne ...

header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
header("Cache-Control: no-store, no-cache, must-revalidate");
header("Cache-Control: post-check=0, pre-check=0", false);
header("Pragma: no-cache");
header("Content-type: image/jpeg");

ale v grafu me to uplne ignoruje ...
RuMeC
Profil *
udelal jsem pokus ...

prehodil jsem graf.php a antispam.php ... a najednu byl z antispamu cajicek ...


uz sem to vyresil ... pred tim sem to editoval v NOTEPADU ..
pak jsem skusil PSPAD a vse jede OK ...

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0