2011-09-15 4 views
0

で画像を保存し、私はちょうど画像が生成し、PHP

<?php 

$canvas = imagecreatetruecolor(800, 350); 

$pink = imagecolorallocate($canvas, 255, 105, 180); 
$white = imagecolorallocate($canvas, 255, 255, 255); 
$green = imagecolorallocate($canvas, 132, 135, 28); 

imagefill($canvas, 0, 0, $white); // BACKGROUND 

function drawlinebox($x1, $y1, $x2, $y2, $height, $color){ 
    global $canvas; 
    imagesetthickness ($canvas, 1); 
    for ($i=1; $i < $height; $i++){ 
     imageline($canvas, $x1, $y1, $x2, $y2, $color); 
     $y1++; $y2++; 
    } 
} 

drawlinebox(20, 20, 780, 300, 30, $green); 

drawlinebox(20, 300, 780, 20, 30, $pink); 

// Output and free from memory 
header('Content-Type: image/png'); 

imagepng($canvas, NULL, 9); 

imagedestroy($canvas); 

?> 

を生成するには、このコードを書いたが、私はまた、この画像がサーバー上に自動的に保存します。 それをクルーンの仕事と考えてください。イメージを作成し、後で使用するためにイメージをサーバーに保存し、保存されたイメージの場所をDBに挿入します。

+0

"クラウンジョブ"とは何ですか? – bejonbee

+0

申し訳ありませんが、私はcronの仕事を書くことを意味しました。 – Ameer

答えて

6

マニュアルに記載されているように、imagepng()の2番目のパラメータは$filenameであり、結果をファイルに保存することができます。

+0

Fileに保存せずにMySQLに直接画像を保存したいのですが、どうすれば可能ですか? – Mani

+0

@ Mani 'image_png()'と組み合わせて 'ob_start()'を使うと可能です。http: /www.php.net/manual/en/function.imagepng.php#53021しかし、それはおそらく良い考えではありません - データベースに画像を格納することに反対する多くの議論があります:[DBに画像を保存する - そうかナー?](http://stackoverflow.com/q/3748) –