Google

NAME="GENERATOR" CONTENT="Modular DocBook HTML Stylesheet Version 1.7">

swf_closefile

(PHP 4 )

swf_closefile --  カレントのShockwave Flashファイルを閉じる

説明

void swf_closefile ( int [return_file])

swf_openfile()関数によりオープンされたファイルを 閉じます。パラメータreturn_fileが設定され ている場合、SWFファイルの内容が関数から返されます。

例 1 ユーザの入力に基づき簡単なflashファイルを生成し、出力します。ま た、データベースにこれを保存します。

<?php

// 変数$textはユーザにより投稿されます。

// データベースアクセス用のグローバル変数
// (swf_savedata()関数で使用)
$DBHOST = "localhost";
$DBUSER = "sterling";
$DBPASS = "secret";

swf_openfile ("php://stdout", 256, 256, 30, 1, 1, 1);

swf_definefont (10, "Ligon-Bold");
swf_fontsize (12);
swf_fontslant (10);
    
swf_definetext (11, $text, 1);
    
swf_pushmatrix ();
swf_translate (-50, 80, 0);
swf_placeobject (11, 60);
swf_popmatrix ();

swf_showframe ();
  
swf_startdoaction ();
swf_actionstop ();
swf_enddoaction ();

$data = swf_closefile (1);

$data ?
swf_savedata ($data) :
die ("Error could not save SWF file");

// void swf_savedata (string data)
// 後で取得できるように生成されたファイルをデータベースに保存します。
function swf_savedata ($data)
{
    global $DBHOST, 
           $DBUSER,
           $DBPASS;
    
    $dbh = @mysql_connect ($DBHOST, $DBUSER, $DBPASS);

    if (!$dbh) {
        die (sprintf ("Error [%d]: %s",
                      mysql_errno (), mysql_error ()));
    }

    $stmt = "INSERT INTO swf_files (file) VALUES ('$data')";

    $sth = @mysql_query ($stmt, $dbh);

    if (!$sth) {
        die (sprintf ("Error [%d]: %s",
                      mysql_errno (), mysql_error ()));
    }

    @mysql_free_result ($sth);
    @mysql_close ($dbh);
}
?>