为mysql行的每一行创建一个图像

时间:2014-01-25 21:12:04

标签: php mysql

现在我有了这个(一旦它有效,我会添加更多,但我想保持简单的测试)

    <?php
    try {
    $dbh = new PDO('mysql:host= info goes here');
    foreach($dbh->query('SELECT * from table_name') as $row) {
 header('Content-type: image/jpeg');
  $jpg_image = imagecreatefromjpeg('cert.jpg');
  $white = imagecolorallocate($jpg_image, 255, 255, 255);
  $font_path = 'arial.TTF';
  $text = $row['fname'];
  $font_size = 25;
  imagettftext($jpg_image, $font_size, 0, 500, 100, $white, $font_path, $text);
  imagejpeg($jpg_image);
  imagedestroy($jpg_image);
    }
    $dbh = null;
} catch (PDOException $e) {
    print "Error!: " . $e->getMessage() . "<br/>";
    die();
}
?>

代码有效,但它只取第一个名字,我想知道是否有办法使它成为每个名称(行)的一个,直到它到达行的末尾。 我打算每个名字保存一张图片。我正在尝试制作一些填写证书信息并将其保存在服务器上的文件夹中的内容

1 个答案:

答案 0 :(得分:0)

每次只为其创建一个唯一的文件名,例如基于数据库中的某个字段,时间戳或随机数,并将其传递给imagejpeg。见the manual about the function

imagejpeg($jpg_image, "some/dir/some_unique_filename.jpeg");