sql >> データベース >  >> RDS >> Mysql

基本的なテーブル作成fpdf

    チュートリアル を読んでフォローする FPDFサイトでのスタートは良いスタートかもしれません。

    テーブルがあると仮定します(peopleと呼びましょう) )およびこのようなサンプルデータ

    CREATE TABLE People
        (id int, 
         first_name varchar(5), 
         middle_name varchar(4), 
         last_name varchar(5), 
         age int, 
         email varchar(15));
    
    INSERT INTO People
        (id, first_name, middle_name, last_name, age, email)
    VALUES
        (1, 'Jhon', NULL, 'Doe', 27, '[email protected]'),
        (2, 'Mark', 'J', 'Lee', 35, '[email protected]'),
        (3, 'Helen', 'P', 'Smith', 30, '[email protected]');
    

    これがあなたが望むことをする基本的なphpスクリプトです。 注: 簡潔にするために、コードにはエラー処理がありません。

    <?php
    require('fpdf.php');
    
    class People {
        public function all() {
            try {
                $db = new PDO('mysql:host=localhost;dbname=test;charset=UTF-8', 'user', 'password');
                $query = $db->prepare("SELECT first_name, middle_name, last_name, age, email FROM people ");
                $query->execute();
                $people = $query->fetchAll(PDO::FETCH_ASSOC);
            } catch (PDOException $e) {
                //echo "Exeption: " .$e->getMessage();
                $result = false;
            }
            $query = null;
            $db = null;
            return $people;        
        }
    }
    
    class PeoplePDF extends FPDF {
        // Create basic table
        public function CreateTable($header, $data)
        {
            // Header
            $this->SetFillColor(0);
            $this->SetTextColor(255);
            $this->SetFont('','B');
            foreach ($header as $col) {
                //Cell(float w [, float h [, string txt [, mixed border [, int ln [, string align [, boolean fill [, mixed link]]]]]]])
                $this->Cell($col[1], 10, $col[0], 1, 0, 'L', true);
            }
            $this->Ln();
            // Data
            $this->SetFillColor(255);
            $this->SetTextColor(0);
            $this->SetFont('');
            foreach ($data as $row)
            {
                $i = 0;
                foreach ($row as $field) {
                    $this->Cell($header[$i][1], 6, $field, 1, 0, 'L', true);
                    $i++;
                }
                $this->Ln();
            }
        }
    }
    
    // Column headings
    $header = array(
                 array('First Name',  30), 
                 array('Middle Name', 30), 
                 array('Last Name',   30),
                 array('Age',         12),
                 array('Email',       47)
              );
    // Get data
    $people = new People();
    $data = $people->all();
    
    $pdf = new PeoplePDF();
    $pdf->SetFont('Arial', '', 12);
    $pdf->AddPage();
    $pdf->CreateTable($header,$data);
    $pdf->Output();
    

    必ず接続文字列を変更してください

    $db = new PDO('mysql:host=localhost;dbname=test;charset=UTF-8', 'user', 'password');
                              ^^^^^^^^^        ^^^^                  ^^^^    ^^^^^^^^
    



    1. DjangoデータベースのバックエンドをMySqlからPostgreSQLに変更する

    2. MySQLi count(*)は常に1を返します

    3. SQL Serverデータベースにauto_increment主キーを追加するにはどうすればよいですか?

    4. INTとUnique-データベースのIDフィールドの識別子