XML DBだからできること:HTMLをDBにそのまま保存

鵜飼寛太(サイバーテック)
2008-03-19 18:30:00
  • このエントリーをはてなブックマークに追加
最新特集【一覧】
neoCore用関数をまとめたneoCore.functions.phpです。
<?php
/**
 * 
 * 
 * @package    
 * @subpackage 
 * @author     Kanta Ukai <ukai@cybertech.co.jp>
 * @version    
 */
/**
 * cURL
 * @param String HTTP Method GET|POST
 * @param String neoCore Command neoadmin|neoquery
 * @param String Data
 * @param String neoCore Session ID
 * @return String result
 */
    function cURL ($method, $query, $data = null, $sid = null) {
    // cURLの初期化
        $ch = curl_init();
    // 
        curl_setopt($ch, CURLOPT_HEADER, FALSE);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
    // セッションIDが設定されている場合、HTTPヘッダに設定する
        if ($sid) {
        // 
            curl_setopt($ch, CURLOPT_HTTPHEADER, array('sid: ' . $sid));
        // 
        }
    // 
        $url = "http://localhost:7700/" . $query;
    // メソッド判定
        if ($method == 'GET') {
        // GETの場合、URLと連結
            $url .= '?' . $data;
        // 
        } else {
        // POSTの場合、ポストフィールドに設定
            curl_setopt($ch, CURLOPT_POST, TRUE);
            curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
        // 
        }
    // 接続先の設定
        curl_setopt($ch, CURLOPT_URL, $url);
    // 実接続
        $result = curl_exec($ch);
    // cURLの終了
        curl_close($ch);
    // 
        return $result;
    // 
    }
/**
 * getsession
 * @param String neoCore User Name
 * @param String neoCore Password
 * @return String neoCore Session ID
 */
    function getsession ($user = '', $password = '') {
    // 
        $result = cURL('POST', "neoadmin", "cmd=GETSESSION&user={$user}&passwd={$password}");
    // <sid>SESSION ID</sid>で返却されるのでDOM化して取り出す
        $doc = DOMDocument::loadXML($result);
        $sid = $doc->documentElement->nodeValue;
    // 
        return $sid;
    }
/**
 * endsession
 * @param String neoCore Session ID
 * @return String Result XML
 */
    function endsession ($sid) {
    // 
        $result = cURL('GET', "neoadmin", "cmd=ENDSESSION", $sid);
    // 
        return $result;
    // 
    }
/**
 * transaction_start
 * @param String neoCore Session ID
 * @return String Result XML
 */
    function transaction_start ($sid) {
    // 
        $result = cURL('GET', "neoquery", "cmd=TRANSACTION_START", $sid);
    // 
        return $result;
    // 
    }
/**
 * transaction_commit
 * @param String neoCore Session ID
 * @return String Result XML
 */
    function transaction_commit ($sid) {
    // 
        $result = cURL('GET', "neoquery", "cmd=TRANSACTION_COMMIT", $sid);
    // 
        return $result;
    // 
    }
/**
 * transaction_rollback
 * @param String neoCore Session ID
 * @return String Result XML
 */
    function transaction_rollback ($sid) {
    // 
        $result = cURL('GET', "neoquery", "cmd=TRANSACTION_ROLLBACK", $sid);
    // 
        return $result;
    // 
    }
/**
 * 
 */
    function store ($sid , $xml, $prefix = "", $schema = "") {
    // 
        if ($schema) {
        // 
            $data['schemafile'] = $schema;
        // 
        }
    // 
        if ($prefix) {
        // 
            $data['prefixfile'] = $prefix;
        // 
        }
    // 
        $data['xmlsourcefile'] = $xml;
    // 
        $result = cURL('POST', "neoquery?cmd=STORE", $data, $sid);
    // 
        return $result;
    // 
    }
/**
 * 
 */
    function query ($sid, $input) {
    // 
        $result = cURL('GET', "neoquery", "cmd=QUERY&input={$input}", $sid);
    // 
        return $result;
    // 
    }
  • 新着記事
  • 特集
  • ブログ