チェンジセット 94: trunk/install/php

差分発生行の前後
無視リスト:
コミット日時:
2010/02/28 22:28:26 (14 年前)
コミッタ:
sorshi
ログメッセージ:

SQLite採用

ファイル:

凡例:

変更無し
追加
削除
更新
コピー
移動
  • trunk/install/php/StarlightBreaker/sb-edit.php

    r88 r94  
    7373FROM foltia_subtitle , foltia_program ,foltia_station   
    7474WHERE foltia_program.tid = foltia_subtitle.tid AND foltia_station.stationid = foltia_subtitle.stationid  
    75  AND foltia_subtitle.pid = '$pid'  
    76   
    77        "
    78         $rs = m_query($con, $query, "DBクエリに失敗しました"); 
     75AND foltia_subtitle.pid = ?  
     76"; 
     77//     $rs = m_query($con, $query, "DBクエリに失敗しました")
     78        $rs = sql_query($con, $query, "DBクエリに失敗しました",array($pid)); 
    7979$rows = pg_num_rows($rs); 
    8080if ($rows == 0){ 
  • trunk/install/php/accountregist.php

    r70 r94  
    5858if ($username != ""){ 
    5959$query = " 
    60 SELECT memberid ,userclass,name,passwd1  
     60SELECT count(memberid) 
    6161FROM foltia_envpolicy  
    62 WHERE foltia_envpolicy.name  = '$username'   
     62WHERE foltia_envpolicy.name  = ?   
    6363"; 
    64         $isaccountexist = m_query($con, $query, "DBクエリに失敗しました"); 
    65         $isaccountexistncount = pg_num_rows($isaccountexist); 
     64//      $isaccountexist = m_query($con, $query, "DBクエリに失敗しました"); 
     65        $isaccountexist = sql_query($con, $query, "DBクエリに失敗しました",array($username)); 
     66 
     67        $isaccountexistncount = $isaccountexist->fetchColumn(0); 
    6668 
    6769        if ($isaccountexistncount == 0){ 
     
    8587"; 
    8688        $rs = m_query($con, $query, "DBクエリに失敗しました"); 
    87         $maxrows = pg_num_rows($rs); 
    88         if ($maxrows == 0)
    89         $nextcno = 1
     89        $maxid = $rs->fetchColumn(0); 
     90        if ($maxid)
     91               $nextcno = $maxid + 1
    9092        }else{ 
    91         $rowdata = pg_fetch_row($rs, 0); 
    92         $nextcno = $rowdata[0]; 
    93         $nextcno++ ; 
     93                $nextcno = 1; 
    9494        } 
    9595 
     
    110110$query = " 
    111111insert into foltia_envpolicy   
    112 values ( '$nextcno','2','$username','$userpasswd',now(),'$remotehost')"; 
     112values ( ?,'2',?,?,now(),?)"; 
    113113//print "$query <br>\n"; 
    114         $rs = m_query($con, $query, "DBクエリに失敗しました"); 
     114//      $rs = m_query($con, $query, "DBクエリに失敗しました"); 
     115        $rs = sql_query($con, $query, "DBクエリに失敗しました",array($nextcno,$username,$userpasswd,$remotehost)); 
    115116 
    116117print "次のアカウントを登録しました。<br> 
  • trunk/install/php/delepgp.php

    r84 r94  
    7070WHERE foltia_subtitle.tid = 0 AND  
    7171foltia_station.stationid = foltia_subtitle.stationid AND  
    72 foltia_subtitle.pid = $pid  
     72foltia_subtitle.pid = ?  
    7373 "; 
    7474 
    75       $rs = m_query($con, $query, "DBクエリに失敗しました"); 
    76         $maxrows = pg_num_rows($rs); 
    77                          
    78                if ($maxrows == 0) { 
     75//    $rs = m_query($con, $query, "DBクエリに失敗しました"); 
     76        $rs = sql_query($con, $query, "DBクエリに失敗しました",array($pid)); 
     77$rowdata = $rs->fetch(); 
     78if (! $rowdate) { 
    7979                die_exit("登録番組がありません<BR>"); 
    8080                } 
    81                 $rowdata = pg_fetch_row($rs, 0); 
    8281 
    8382                $pid = htmlspecialchars($rowdata[0]); 
     
    114113                DELETE   
    115114                FROM  foltia_subtitle   
    116                 WHERE foltia_subtitle.pid = $pid AND  foltia_subtitle.tid = 0 "; 
    117                         $rs = m_query($con, $query, "DBクエリに失敗しました"); 
     115                WHERE foltia_subtitle.pid = ? AND  foltia_subtitle.tid = 0 "; 
     116//                      $rs = m_query($con, $query, "DBクエリに失敗しました"); 
     117                        $rs = sql_query($con, $query, "DBクエリに失敗しました",array($pid)); 
    118118                } 
    119119        }else{ 
  • trunk/install/php/deletemovie.php

    r76 r94  
    8888FROM foltia_subtitle , foltia_program    
    8989WHERE foltia_program.tid = foltia_subtitle.tid   
    90  AND foltia_subtitle.tid = $filesplit[0]  
     90 AND foltia_subtitle.tid = ?  
    9191"; 
    92 $rs = m_query($con, $query, "DBクエリに失敗しました"); 
    93 $rowdata = pg_fetch_row($rs, $row); 
     92//$rs = m_query($con, $query, "DBクエリに失敗しました"); 
     93$rs = sql_query($con, $query, "DBクエリに失敗しました",array($filesplit[0])); 
     94                                $rall = $rs->fetchAll(); 
     95                                $rowdata = $rall[$row]; 
    9496//print" $fName./$rowdata[1]//$rowdata[2]<BR>\n"; 
    9597$title = $rowdata[1]; 
     
    103105FROM foltia_subtitle , foltia_program    
    104106WHERE foltia_program.tid = foltia_subtitle.tid   
    105  AND foltia_subtitle.tid = $filesplit[0]  
    106  AND foltia_subtitle.countno = $filesplit[1]  
     107 AND foltia_subtitle.tid = ?  
     108 AND foltia_subtitle.countno = ?  
    107109"; 
    108 $rs = m_query($con, $query, "DBクエリに失敗しました"); 
    109 $rowdata = pg_fetch_row($rs, $row); 
     110//$rs = m_query($con, $query, "DBクエリに失敗しました"); 
     111$rs = sql_query($con, $query, "DBクエリに失敗しました",array($filesplit[0] ,$filesplit[1])); 
     112                                $rall = $rs->fetchAll(); 
     113                                $rowdata = $rall[$row]; 
    110114//print" $fName./$rowdata[1]/$rowdata[2]/$rowdata[3]<BR>\n"; 
    111115$title = $rowdata[1]; 
     
    119123$count = htmlspecialchars($count); 
    120124$subtitle = htmlspecialchars($subtitle); 
    121  
    122 //-- 
    123  
    124125 
    125126print " 
     
    138139$query = " 
    139140DELETE  FROM  foltia_m2pfiles   
    140 WHERE m2pfilename = '$fName'  
     141WHERE m2pfilename = ?  
    141142"; 
    142 $rs = m_query($con, $query, "DBクエリに失敗しました"); 
     143//$rs = m_query($con, $query, "DBクエリに失敗しました"); 
     144$rs = sql_query($con, $query, "DBクエリに失敗しました",array($fName)); 
    143145 
    144146//削除処理 
  • trunk/install/php/delreserve.php

    r70 r94  
    4444<?php 
    4545 
    46  
    47 $tid = getgetnumform(tid); 
     46    $tid = getgetnumform("tid"); 
    4847                if ($tid == "") { 
    4948                die_exit("番組がありません<BR>"); 
    5049                } 
    51 $sid = getgetnumform(sid); 
     50    $sid = getgetnumform("sid"); 
    5251                if ($sid == "") { 
    5352                die_exit("局がありません<BR>"); 
     
    7069foltia_tvrecord.stationid   
    7170FROM  foltia_tvrecord , foltia_program , foltia_station  
    72 WHERE foltia_tvrecord.tid = foltia_program.tid  AND foltia_tvrecord.stationid = foltia_station .stationid  AND foltia_tvrecord.tid = $tid AND foltia_tvrecord.stationid = $sid  "; 
    73  
    74         $rs = m_query($con, $query, "DBクエリに失敗しました"); 
    75         $maxrows = pg_num_rows($rs); 
    76                          
    77                 if ($maxrows == 0) { 
     71WHERE foltia_tvrecord.tid = foltia_program.tid  AND foltia_tvrecord.stationid = foltia_station .stationid  AND foltia_tvrecord.tid = ? AND foltia_tvrecord.stationid = ?  "; 
     72 
     73//      $rs = m_query($con, $query, "DBクエリに失敗しました"); 
     74        $rs = sql_query($con, $query, "DBクエリに失敗しました",array($tid,$sid)); 
     75$rowdata = $rs->fetch(); 
     76 
     77if (! $rowdata ) { 
    7878                die_exit("登録番組がありません<BR>"); 
    7979                } 
    80                 $rowdata = pg_fetch_row($rs, 0); 
    81  
    8280                $tid = htmlspecialchars($rowdata[0]); 
    8381                $stationname = htmlspecialchars($rowdata[1]); 
     
    107105DELETE   
    108106FROM  foltia_tvrecord   
    109 WHERE foltia_tvrecord.tid = $tid AND foltia_tvrecord.stationid = $sid  "; 
    110         $rs = m_query($con, $query, "DBクエリに失敗しました"); 
     107WHERE foltia_tvrecord.tid = ? AND foltia_tvrecord.stationid = ?  "; 
     108$rs->closeCursor(); 
     109//      $rs = m_query($con, $query, "DBクエリに失敗しました"); 
     110        $rs = sql_query($con, $query, "DBクエリに失敗しました",array($tid,$sid)); 
    111111} 
    112112 
     
    164164FROM foltia_subtitle , foltia_program ,foltia_station   
    165165WHERE foltia_program.tid = foltia_subtitle.tid AND foltia_station.stationid = foltia_subtitle.stationid  
    166  AND foltia_subtitle.startdatetime >= '$now'  AND foltia_program.tid ='$tid'  
     166 AND foltia_subtitle.startdatetime >= ?  AND foltia_program.tid = ?  
    167167ORDER BY foltia_subtitle.startdatetime  ASC 
    168168"; 
    169       $rs = m_query($con, $query, "DBクエリに失敗しました"); 
    170         $maxrows = pg_num_rows($rs); 
    171                          
    172                if ($maxrows == 0) { 
     169//    $rs = m_query($con, $query, "DBクエリに失敗しました"); 
     170        $rs = sql_query($con, $query, "DBクエリに失敗しました",array($now,$tid)); 
     171$rowdata = $rs->fetch(); 
     172if (! $rowdata) { 
    173173                echo("放映予定はありません<BR>"); 
    174                 } 
    175                 else{ 
    176                 $maxcols = pg_num_fields($rs);           
     174}else{ 
     175        $maxcols = $rs->columnCount(); 
    177176?> 
    178177  <table BORDER="0" CELLPADDING="0" CELLSPACING="2" WIDTH="100%" BGCOLOR="#bcf1be"> 
     
    192191                <?php 
    193192                        /* テーブルのデータを出力 */ 
    194                        for ($row = 0; $row < $maxrows; $row++) { /* 行に対応 */ 
     193             do { 
    195194                                echo("<tr>\n"); 
    196                                 /* pg_fetch_row で一行取り出す */ 
    197                                 $rowdata = pg_fetch_row($rs, $row); 
    198  
    199195                                for ($col = 0; $col < $maxcols; $col++) { /* 列に対応 */ 
    200196                                        echo("<td>".htmlspecialchars($rowdata[$col])."<br></td>\n"); 
    201197                                } 
    202198                                echo("</tr>\n"); 
    203                        } 
     199             } while ($row = $rs->fetch()); 
    204200                }//end if 
    205201                ?> 
  • trunk/install/php/folcast.php

    r70 r94  
    5151$query = " 
    5252SELECT  foltia_program.tid,foltia_program.title, 
    53 foltia_subtitle.countno , foltia_subtitle.subtitle , foltia_subtitle.startdatetime, foltia_subtitle.pspfilename,foltia_subtitle.lengthmin,foltia_subtitle.enddatetime   FROM foltia_subtitle , foltia_program   WHERE \"pspfilename\" ~~ 'M%%'  AND foltia_program.tid = foltia_subtitle.tid AND foltia_program.tid = $tid    
     53foltia_subtitle.countno , foltia_subtitle.subtitle , foltia_subtitle.startdatetime, foltia_subtitle.pspfilename,foltia_subtitle.lengthmin,foltia_subtitle.enddatetime   FROM foltia_subtitle , foltia_program   WHERE \"pspfilename\" LIKE 'M%%'  AND foltia_program.tid = foltia_subtitle.tid AND foltia_program.tid = $tid    
    5454ORDER BY \"enddatetime\" DESC  
    5555offset 0 limit  $max  
     
    5959SELECT  foltia_program.tid,foltia_program.title  
    6060FROM  foltia_program    
    61 WHERE foltia_program.tid = $tid    
     61WHERE foltia_program.tid = ?    
    6262"; 
    63         $titlers = m_query($con, $query, "DBクエリに失敗しました"); 
    64         $rowdata = pg_fetch_row($titlers, 0);  
     63//      $titlers = m_query($con, $query, "DBクエリに失敗しました"); 
     64        $titlers = sql_query($con, $query, "DBクエリに失敗しました",array($tid)); 
     65        $rowdata = $titlers->fetch(); 
    6566        $rsstitle = $rowdata[1]; 
    6667}else{ 
     
    6869$query = " 
    6970SELECT  foltia_program.tid,foltia_program.title, 
    70 foltia_subtitle.countno , foltia_subtitle.subtitle , foltia_subtitle.startdatetime, foltia_subtitle.pspfilename,foltia_subtitle.lengthmin,foltia_subtitle.enddatetime   FROM foltia_subtitle , foltia_program   WHERE \"pspfilename\" ~~ 'M%%'  AND foltia_program.tid = foltia_subtitle.tid ORDER BY \"enddatetime\" DESC  
    71 offset 0 limit  $max  
     71foltia_subtitle.countno , foltia_subtitle.subtitle , foltia_subtitle.startdatetime, foltia_subtitle.pspfilename,foltia_subtitle.lengthmin,foltia_subtitle.enddatetime   FROM foltia_subtitle , foltia_program   WHERE \"pspfilename\" LIKE 'M%%'  AND foltia_program.tid = foltia_subtitle.tid ORDER BY \"enddatetime\" DESC  
     72offset 0 limit  ?  
    7273        "; 
    7374        $rsstitle = "新規録画"; 
     
    9697print $header; 
    9798 
    98         $rs = m_query($con, $query, "DBクエリに失敗しました"); 
    99         $maxrows = pg_num_rows($rs); 
     99//      $rs = m_query($con, $query, "DBクエリに失敗しました"); 
     100        $rs = sql_query($con, $query, "DBクエリに失敗しました",array($max)); 
     101$rowdata = $rs->fetch(); 
    100102 
    101 if ($maxrows == 0) { 
     103if (! $rowdata) { 
    102104                                //die_exit("No items");  
    103105}else{ 
    104  
    105 for ($row = 0; $row < $maxrows; $row++) {  
    106                 $rowdata = pg_fetch_row($rs, $row); 
    107                  
     106        do { 
    108107//$title = mb_convert_encoding($rowdata[1],"UTF-8", "EUC-JP"); 
    109108$tid =  $rowdata[0]; 
     
    163162print $item ; 
    164163 
    165 }//for 
     164        } while ($rowdata = $rs->fetch()); //do 
    166165 
    167166}//if 
  • trunk/install/php/foltia_config2.php.template

    r83 r94  
    2727 
    2828// データベース接続設定 
    29         define("DATABASE_NAME", "foltia"); 
    30         define("DBHOST", "localhost"); 
    31         define("USER_NAME"    , "foltia"    ); 
    32         define("USER_PASSWORD", "passwd"    ); 
     29// define("DSN", "pgsql:host=localhost dbname=foltia user=foltia password= "); 
     30define("DSN", "sqlite:/home/foltia/foltia.sqlite"); 
    3331 
    3432//        $mylocalip = "192.168.0.177" ; //動いている機械のIPアドレス 
  • trunk/install/php/foltialib.php

    r89 r94  
    9393                } 
    9494        } 
    95          
    96         /* LIKE 用の文字列のエスケープ */ 
    97         function escape_like($sql, $quote = TRUE) { 
    98                 return ($quote ? "'" : "") . 
    99                        str_replace(array("\\\\",     "%"    , "_"    ), 
    100                                    array("\\\\\\\\", "\\\\%", "\\\\_"), 
    101                                    pg_escape_string($sql)) . 
    102                        ($quote ? "'" : ""); 
    103         } 
    104          
     95 
    10596        /* SQL 文字列のエスケープ */ 
    10697        function escape_string($sql, $quote = FALSE) { 
     
    10899                        return "null"; 
    109100                } 
     101                if (preg_match("/^pgsql/", DSN)){ 
    110102                return ($quote ? "'" : "") . 
    111103                       pg_escape_string($sql) . 
    112104                       ($quote ? "'" : ""); 
    113         } 
     105                }else if (preg_match("/^sqlite/", DSN)){ 
     106                /*      return ($quote ? "'" : "") . 
     107                                sqlite_escape_string($sql) . 
     108                                ($quote ? "'" : ""); 
     109                */ 
     110                return($sql); 
     111                }else{ 
     112                        return "null"; 
     113                } 
     114        }  
    114115         
    115116        /* SQL 数値のエスケープ */ 
     
    124125        } 
    125126         
    126         /* PostgreSQL サーバに接続 */ 
     127        /* DBに接続 */ 
    127128        function m_connect() {  
    128 /*              $con = @pg_connect("host=".DBHOST ." dbname=".DATABASE_NAME . 
    129                                    " user=".USER_NAME . 
    130                                    " password=".USER_PASSWORD); 
    131 */ 
    132                 $con = @pg_pconnect("host=".DBHOST ." dbname=".DATABASE_NAME . 
    133                                    " user=".USER_NAME . 
    134                                    " password=".USER_PASSWORD); 
    135  
    136  
    137                 if (!$con) { 
    138                         die_exit("データベースに接続出来ませんでした。"); 
     129        try { 
     130                $dbh = new PDO(DSN); 
     131                $dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); 
     132                return($dbh); 
     133        } catch (PDOException $e) { 
     134                die_exit($e->getMessage() . ": データベースに接続出来ませんでした。"); 
    139135                } 
    140136                /* データベースと、PHP の内部文字コードが違う場合 */ 
    141                 return($con); 
    142137        } 
    143138 
    144139        /* データベースとの接続を切り離す */ 
    145         function m_close($con) { 
    146                 return @pg_close($con); 
    147         } 
    148  
    149         /* SQL 文を実行 */ 
    150         function m_query($con, $query, $errmessage) { 
    151                 $rtn = @pg_query($con, $query); 
    152                 if (!$rtn) { 
     140function m_close($dbh) { 
     141        return null; 
     142        } 
     143 
     144//旧関数 sql_queryに置き換え 
     145function m_query($dbh, $query, $errmessage) { 
     146        try { 
     147                $rtn = $dbh->query($query); 
     148                return($rtn); 
     149        } catch (PDOException $e) { 
    153150                        /* エラーメッセージに SQL 文を出すのはセキュリティ上良くない!! */ 
    154151                        $msg = $errmessage . "<br>\n" . 
    155                                @pg_last_error($con) . "<br>\n" . 
     152                    $e->getMessage() . "<br>\n" . 
     153                    var_export($e->errorInfo, true) . "<br>\n" . 
    156154                               "<small><code>" . htmlspecialchars($query) . 
    157155                               "</code></small>\n"; 
    158                                $rtn = @pg_query($con, "rollback");//04.4.8 
    159                        m_close($con)
     156//              $dbh->rollBack(); 
     157                $dbh = null
    160158                        die_exit($msg); 
    161159                } 
     160        } 
     161/* SQL 文を実行 */ 
     162function sql_query($dbh, $query, $errmessage,$paramarray) { 
     163        try { 
     164                $rtn = $dbh->prepare("$query"); 
     165                $rtn->execute($paramarray); 
    162166                return($rtn); 
     167        } catch (PDOException $e) { 
     168                        /* エラーメッセージに SQL 文を出すのはセキュリティ上良くない!! */ 
     169                        $msg = $errmessage . "<br>\n" . 
     170                    $e->getMessage() . "<br>\n" . 
     171                    var_export($e->errorInfo, true) . "<br>\n" . 
     172                               "<small><code>" . htmlspecialchars($query) . 
     173                               "</code></small>\n"; 
     174//              $dbh->rollBack(); 
     175                $dbh = null; 
     176                        die_exit($msg); 
     177                } 
    163178        } 
    164179 
     
    166181        function m_showtable($rs) { 
    167182                /* 検索件数 */ 
    168                $maxrows = pg_num_rows($rs)
     183        $maxrows = 0
    169184                 
    170                 if ($maxrows == 0) { 
     185        $rowdata = $rs->fetch(); 
     186        if (! $rowdata) { 
    171187                        echo("<p class=\"msg\">データが存在しません</p>\n"); 
    172188                        return 0; 
     
    174190                 
    175191                /* フィールド数 */ 
    176                $maxcols = pg_num_fields($rs); 
     192        $maxcols = $rs->columnCount(); 
    177193                ?> 
    178194<table class="list" summary="データ検索結果を表示" border="1"> 
     
    183199                                for ($col = 1; $col < $maxcols; $col++) { 
    184200                                        /* pg_field_name() はフィールド名を返す */ 
    185                                         $f_name = htmlspecialchars(pg_field_name($rs, $col)); 
     201                     $meta = $rs->getColumnMeta($col); 
     202                     $f_name = htmlspecialchars($meta["name"]); 
    186203                                        echo("<th abbr=\"$f_name\">$f_name</th>\n"); 
    187204                                } 
     
    192209                <?php 
    193210                        /* テーブルのデータを出力 */ 
    194                         for ($row = 0; $row < $maxrows; $row++) { /* 行に対応 */ 
     211              do { 
     212                      $maxrows++; 
     213 
    195214                                echo("<tr>\n"); 
    196                                 /* pg_fetch_row で一行取り出す */ 
    197                                 $rowdata = pg_fetch_row($rs, $row); 
    198215                                /* 1列目にリンクを張る */ 
    199216                                echo("<td><a href=\"edit.php?q_code=" . 
     
    204221                                } 
    205222                                echo("</tr>\n"); 
    206                        } 
     223              } while ($rowdata = $rs->fetch()); 
    207224                ?> 
    208225        </tbody> 
     
    212229        } 
    213230 
    214         /* 指定したコードのデータを表示 */ 
    215         function m_viewdata($con, $code) { 
    216                 /* コードに該当するデータを検索 */ 
    217                 $query = " 
     231 
     232function m_viewdata($dbh, $code) { 
     233 
     234/*これ使ってないよね? 
     235 
     236        $query = " 
    218237select p.code 
    219238      ,p.name 
     
    222241      ,s.name as job 
    223242      ,p.profile 
    224       ,to_char(p.editdate, 'YYYY/MM/DD HH24:MI:SS') as editdate 
     243      ,datetime(p.editdate) as editdate 
    225244  from inet_profile p left join inet_job s on p.job = s.code 
    226245 where p.code = $code"; 
    227                 $rs = m_query($con, $query, "個人情報の取得に失敗しました。"); 
    228                 if (pg_num_rows($rs) == 0) { 
     246        $rs = m_query($dbh, $query, "個人情報の取得に失敗しました。"); 
     247        $rowdata = $rs->fetch(); 
     248        if (! $rowdata) { 
    229249                        echo("<p class=\"msg\">データが存在しません</p>\n"); 
    230250                        return FALSE; 
    231251                } 
    232252                 
    233                 /* フィールド数 */ 
    234                 $maxcols = pg_num_fields($rs); 
    235                 /* 先頭行 */ 
    236                 $rowdata = pg_fetch_row($rs, 0); 
     253                // フィールド数  
     254        $maxcols = $rs->columnCount(); 
    237255                ?> 
    238256<table class="view" summary="データベース上のデータを表示" border="1"> 
    239257        <tr> 
    240                 <td class="name"><?= htmlspecialchars(pg_field_name($rs, 1)) ?></td> 
     258             <?php $meta = $rs->getColumnMeta(1); ?> 
     259             <td class="name"><?= htmlspecialchars($meta["name"]) ?></td> 
    241260                <td><a href="edit.php?q_code=<?= $rowdata[0] ?>" 
    242261                     ><?= htmlspecialchars($rowdata[1]) ?></a></td> 
    243262        </tr> 
    244         <?php for ($col = 2; $col < $maxcols; $col++) { ?> 
     263             <?php for ($col = 2; $col < $maxcols; $col++) { 
     264                $meta = $rs->getColumnMeta($col); ?> 
    245265        <tr> 
    246                <td class="name"><?= htmlspecialchars(pg_field_name($rs, $col)) ?></td> 
     266            <td class="name"><?= htmlspecialchars($meta["name"]) ?></td> 
    247267                <td><?= htmlspecialchars($rowdata[$col]) ?></td> 
    248268        </tr> 
     
    250270</table> 
    251271                <?php 
    252                 /* クエリーを解放 */ 
    253                 pg_free_result($rs); 
    254                  
     272                // クエリーを解放  
     273      $rs = null; 
    255274                return TRUE; 
     275*/ 
    256276        } 
    257277         
     
    294314        "; 
    295315        $rs = m_query($con, $query, "DBクエリに失敗しました"); 
    296         $maxrows = pg_num_rows($rs); 
    297 if ($maxrows == 0) { 
     316        $rowdata = $rs->fetch(); 
     317       if (! $rowdata) { 
    298318                print("番組データがありません<BR>");                        
    299319}else{ 
     
    301321//print "<ul><!-- ($maxrows) $query -->\n"; 
    302322 
    303 for ($row = 0; $row < $maxrows; $row++) {  
    304           
    305 $rowdata = pg_fetch_row($rs, $row); 
    306  
     323                do { 
    307324$printstarttime = substr($rowdata[0],8,2) . ":" .  substr($rowdata[0],10,2); 
    308325$tdclass = "t".substr($rowdata[0],8,2) .  substr($rowdata[0],10,2); 
     
    323340</li>\n"; 
    324341*/ 
    325 }//for 
     342                } while ($rowdata = $rs->fetch());//do 
    326343//print "</ul>\n"; 
    327344print "</table>\n"; 
     
    429446global $recfolderpath,$recfolderpath; 
    430447 
    431         exec ( "df -h  $recfolderpath | grep $recfolderpath", $hdfreearea); 
    432         $freearea = preg_split ("/[\s,]+/", $hdfreearea[0]); 
     448//      exec ( "df -h  $recfolderpath | grep $recfolderpath", $hdfreearea); 
     449//      $freearea = preg_split ("/[\s,]+/", $hdfreearea[0]); 
     450        exec ( "df -hP  $recfolderpath", $hdfreearea); 
     451        $freearea = preg_split ("/[\s,]+/", $hdfreearea[count($hdfreearea)-1]); 
    433452 
    434453    return $freearea; 
     
    557576        "; 
    558577        $useraccount = m_query($con, $query, "DBクエリに失敗しました"); 
    559         $useraccountrows = pg_num_rows($useraccount); 
    560          
    561         if ($useraccountrows == 1 ){ 
    562                 $rowdata = pg_fetch_row($useraccount, 0); 
     578                $rowdata = $useraccount->fetch(); 
     579                if (! $rowdata) { 
     580                        header("HTTP/1.0 401 Unauthorized"); 
     581                        redirectlogin(); 
     582                } 
     583         
    563584                $memberid = $rowdata[0]; 
    564585                $userclass = $rowdata[1]; 
    565586                $username =  $rowdata[2]; 
    566587                $dbpasswd = $rowdata[3]; 
    567         }else{ 
     588 
     589                $rowdata = $useraccount->fetch(); 
     590                if ($rowdata) { 
    568591                header("HTTP/1.0 401 Unauthorized"); 
    569                 //print "<!-- DEBUG DB record error ($useraccountrows)-->"; 
    570592                redirectlogin(); 
    571         }//end if 
    572  
     593                } 
    573594 
    574595// passwdをdbから取りだし 
     
    627648        "; 
    628649                $useraccount = m_query($con, $query, "DBクエリに失敗しました"); 
    629         $useraccountrows = pg_num_rows($useraccount); 
    630          
    631         if ($useraccountrows == 1 ){ 
    632                 $rowdata = pg_fetch_row($useraccount, 0); 
    633                 //$userclass = $rowdata[1]; 
    634                 return ($rowdata[1]); 
    635         }else{ 
    636         return (99);//エラー 
    637         }//end if 
     650                $rowdata = $useraccount->fetch(); 
     651                if (! $rowdata) { 
     652                        return (99); 
     653                } 
     654         
     655                $userclass = $rowdata[1]; 
     656 
     657                $rowdata = $useraccount->fetch(); 
     658                if ($rowdata) { 
     659                        return (99); 
     660                } 
     661 
     662                return ($userclass); 
    638663         
    639664}else{ 
     
    655680        "; 
    656681                $useraccount = m_query($con, $query, "DBクエリに失敗しました"); 
    657         $useraccountrows = pg_num_rows($useraccount); 
    658          
    659         if ($useraccountrows == 1 ){ 
    660                 $rowdata = pg_fetch_row($useraccount, 0); 
    661                 //$userclass = $rowdata[1]; 
    662                 return ($rowdata[0]); 
    663         }else{ 
     682                $rowdata = $useraccount->fetch(); 
     683                if (! $rowdata) { 
    664684        return (-1);//エラー 
    665         }//end if 
     685                } 
     686 
     687                $memberid = $rowdata[0]; 
     688 
     689                $rowdata = $useraccount->fetch(); 
     690                if ($rowdata) { 
     691                        return (-1); 
     692                } 
     693 
     694                return ($memberid); 
    666695         
    667696}else{ 
     
    682711        "; 
    683712                $useraccount = m_query($con, $query, "DBクエリに失敗しました"); 
    684         $useraccountrows = pg_num_rows($useraccount); 
    685          
    686         if ($useraccountrows == 1 ){ 
    687                 $rowdata = pg_fetch_row($useraccount, 0); 
    688                 return ($rowdata[2]); 
     713                $rowdata = $useraccount->fetch(); 
     714                if (! $rowdata) { 
     715        return ("");//エラー 
     716                } 
     717         
     718                $name = $rowdata[2]; 
     719 
     720                $rowdata = $useraccount->fetch(); 
     721                if ($rowdata) { 
     722        return (""); 
     723                } 
     724 
     725                return ($name); 
     726 
    689727        }else{ 
    690         return ("");//エラー 
     728               return (""); 
    691729        }//end if 
    692          
    693 }else{ 
    694         return (""); 
    695 }//end if 
    696  
    697  
    698730 
    699731}//end function getmemberid2name 
  • trunk/install/php/graytable.css

    r51 r94  
    1 body * {margin:0px;padding:0px;border:0px;} 
     1// body * {margin:0px;padding:0px;border:0px;} 
    22 
    33body { 
  • trunk/install/php/index.php

    r83 r94  
    6767WHERE foltia_tvrecord.tid = foltia_program.tid  
    6868AND foltia_program.tid = foltia_subtitle.tid  
    69 AND foltia_subtitle.enddatetime >= '$now'  
     69AND foltia_subtitle.enddatetime >= ?  
    7070ORDER BY \"startdatetime\" ASC  
    7171LIMIT 1000 
    7272        "; 
    73         $reservedrssametid = m_query($con, $query, "DBクエリに失敗しました"); 
    74         $reservedmaxrowssameid = pg_num_rows($reservedrssametid); 
    75          
    76         if ($reservedmaxrowssameid > 0 ){ 
    77         for ($rrow = 0; $rrow < $reservedmaxrowssameid ; $rrow++) { 
    78                 $rowdata = pg_fetch_row($reservedrssametid, $rrow); 
     73//      $reservedrssametid = m_query($con, $query, "DBクエリに失敗しました"); 
     74$reservedrssametid = sql_query($con, $query, "DBクエリに失敗しました",array($now)); 
     75$rowdata = $reservedrssametid->fetch(); 
     76if ($rowdata) { 
     77        do { 
    7978                $reservedpidsametid[] = $rowdata[7]; 
    80         } 
     79        } while ($rowdata = $reservedrssametid->fetch()); 
     80 
    8181        $rowdata = ""; 
    82         $rrow = "";  
    8382        }else{ 
    84         $reservedpidsametid = ""
     83        $reservedpidsametid = array()
    8584        }//end if 
     85$reservedrssametid->closeCursor(); 
    8686 
    8787//録画番組検索 
    8888$query = " 
    8989SELECT 
    90 foltia_program .tid, 
    91 stationname, 
    92 foltia_program .title, 
    93 foltia_subtitle.countno, 
    94 foltia_subtitle.subtitle, 
    95 foltia_subtitle.startdatetime , 
    96 foltia_subtitle.lengthmin , 
    97 foltia_tvrecord.bitrate , 
    98 foltia_subtitle.pid   
     90 foltia_program.tid, stationname, foltia_program.title, 
     91 foltia_subtitle.countno, foltia_subtitle.subtitle, 
     92 foltia_subtitle.startdatetime as x, foltia_subtitle.lengthmin, 
     93 foltia_tvrecord.bitrate, foltia_subtitle.pid 
    9994FROM foltia_subtitle , foltia_program ,foltia_station ,foltia_tvrecord 
    10095WHERE foltia_tvrecord.tid = foltia_program.tid AND foltia_tvrecord.stationid = foltia_station .stationid AND foltia_program.tid = foltia_subtitle.tid AND foltia_station.stationid = foltia_subtitle.stationid 
     
    10297UNION 
    10398SELECT 
    104 foltia_program .tid, 
    105 stationname, 
    106 foltia_program .title, 
    107 foltia_subtitle.countno, 
    108 foltia_subtitle.subtitle, 
    109 foltia_subtitle.startdatetime , 
    110 foltia_subtitle.lengthmin , 
    111 foltia_tvrecord.bitrate , 
    112 foltia_subtitle.pid   
     99 foltia_program.tid, stationname, foltia_program.title, 
     100 foltia_subtitle.countno, foltia_subtitle.subtitle, 
     101 foltia_subtitle.startdatetime, foltia_subtitle.lengthmin, 
     102 foltia_tvrecord.bitrate, foltia_subtitle.pid 
    113103FROM foltia_tvrecord 
    114104LEFT OUTER JOIN foltia_subtitle on (foltia_tvrecord.tid = foltia_subtitle.tid ) 
     
    116106LEFT OUTER JOIN foltia_station on (foltia_subtitle.stationid = foltia_station.stationid ) 
    117107WHERE foltia_tvrecord.stationid = 0 AND 
    118 foltia_subtitle.enddatetime >= '$now' ORDER BY \"startdatetime\" ASC  
    119 LIMIT 1000 
    120         "; 
    121  
    122         $reservedrs = m_query($con, $query, "DBクエリに失敗しました"); 
    123         $reservedmaxrows = pg_num_rows($reservedrs); 
    124          
    125         if ($reservedmaxrows > 0 ){ 
    126         for ($rrow = 0; $rrow < $reservedmaxrows ; $rrow++) { 
    127                 $rowdata = pg_fetch_row($reservedrs, $rrow); 
     108 foltia_subtitle.enddatetime >= '$now' ORDER BY x ASC 
     109LIMIT 1000 
     110        "; 
     111 
     112//$reservedrs = m_query($con, $query, "DBクエリに失敗しました"); 
     113$query = " 
     114SELECT 
     115 foltia_program.tid, stationname, foltia_program.title, 
     116 foltia_subtitle.countno, foltia_subtitle.subtitle, 
     117 foltia_subtitle.startdatetime as x, foltia_subtitle.lengthmin, 
     118 foltia_tvrecord.bitrate, foltia_subtitle.pid 
     119FROM foltia_subtitle , foltia_program ,foltia_station ,foltia_tvrecord 
     120WHERE foltia_tvrecord.tid = foltia_program.tid AND foltia_tvrecord.stationid = foltia_station .stationid AND foltia_program.tid = foltia_subtitle.tid AND foltia_station.stationid = foltia_subtitle.stationid 
     121AND foltia_subtitle.enddatetime >= ?  
     122UNION 
     123SELECT 
     124 foltia_program.tid, stationname, foltia_program.title, 
     125 foltia_subtitle.countno, foltia_subtitle.subtitle, 
     126 foltia_subtitle.startdatetime, foltia_subtitle.lengthmin, 
     127 foltia_tvrecord.bitrate, foltia_subtitle.pid 
     128FROM foltia_tvrecord 
     129LEFT OUTER JOIN foltia_subtitle on (foltia_tvrecord.tid = foltia_subtitle.tid ) 
     130LEFT OUTER JOIN foltia_program on (foltia_tvrecord.tid = foltia_program.tid ) 
     131LEFT OUTER JOIN foltia_station on (foltia_subtitle.stationid = foltia_station.stationid ) 
     132WHERE foltia_tvrecord.stationid = 0 AND 
     133 foltia_subtitle.enddatetime >= ? ORDER BY x ASC 
     134LIMIT 1000 
     135        "; 
     136$reservedrs = sql_query($con, $query, "DBクエリに失敗しました",array($now,$now)); 
     137 
     138$rowdata = $reservedrs->fetch(); 
     139if ($rowdata) { 
     140        do { 
    128141                $reservedpid[] = $rowdata[8]; 
    129         } 
     142        } while ($rowdata = $reservedrs->fetch()); 
    130143        }else{ 
    131         $reservedpid = ""
     144        $reservedpid = array()
    132145        }//end if 
    133146 
     
    138151        $query = " 
    139152        SELECT  
    140 foltia_program .tid, 
    141 stationname, 
    142 foltia_program .title, 
    143 foltia_subtitle.countno, 
    144 foltia_subtitle.subtitle, 
    145 foltia_subtitle.startdatetime , 
    146 foltia_subtitle.lengthmin  ,  
    147 foltia_subtitle.pid , 
    148 foltia_subtitle.startoffset    
     153 foltia_program.tid, stationname, foltia_program.title, 
     154 foltia_subtitle.countno, foltia_subtitle.subtitle, 
     155 foltia_subtitle.startdatetime, foltia_subtitle.lengthmin, 
     156 foltia_subtitle.pid, foltia_subtitle.startoffset 
    149157FROM foltia_subtitle , foltia_program ,foltia_station   
    150158WHERE foltia_program.tid = foltia_subtitle.tid AND foltia_station.stationid = foltia_subtitle.stationid  
     
    153161LIMIT 1000 
    154162        "; 
    155         $rs = m_query($con, $query, "DBクエリに失敗しました"); 
    156         $maxrows = pg_num_rows($rs); 
    157  
    158  
     163$query = " 
     164        SELECT  
     165 foltia_program.tid, stationname, foltia_program.title, 
     166 foltia_subtitle.countno, foltia_subtitle.subtitle, 
     167 foltia_subtitle.startdatetime, foltia_subtitle.lengthmin, 
     168 foltia_subtitle.pid, foltia_subtitle.startoffset 
     169FROM foltia_subtitle , foltia_program ,foltia_station   
     170WHERE foltia_program.tid = foltia_subtitle.tid AND foltia_station.stationid = foltia_subtitle.stationid  
     171 AND foltia_subtitle.enddatetime >= ?  AND foltia_subtitle.countno = '1'  
     172ORDER BY foltia_subtitle.startdatetime  ASC  
     173LIMIT 1000 
     174        "; 
    159175}else{ 
    160        $query = " 
     176$query = " 
    161177        SELECT  
    162 foltia_program .tid, 
    163 stationname, 
    164 foltia_program .title, 
    165 foltia_subtitle.countno, 
    166 foltia_subtitle.subtitle, 
    167 foltia_subtitle.startdatetime , 
    168 foltia_subtitle.lengthmin ,  
    169 foltia_subtitle.pid  ,  
    170 foltia_subtitle.startoffset    
     178 foltia_program.tid, stationname, foltia_program.title, 
     179 foltia_subtitle.countno, foltia_subtitle.subtitle, 
     180 foltia_subtitle.startdatetime, foltia_subtitle.lengthmin, 
     181 foltia_subtitle.pid, foltia_subtitle.startoffset 
    171182FROM foltia_subtitle , foltia_program ,foltia_station   
    172183WHERE foltia_program.tid = foltia_subtitle.tid AND foltia_station.stationid = foltia_subtitle.stationid  
     
    175186LIMIT 1000 
    176187        "; 
    177         $rs = m_query($con, $query, "DBクエリに失敗しました"); 
    178         $maxrows = pg_num_rows($rs); 
    179  
     188$query = " 
     189        SELECT  
     190 foltia_program.tid, stationname, foltia_program.title, 
     191 foltia_subtitle.countno, foltia_subtitle.subtitle, 
     192 foltia_subtitle.startdatetime, foltia_subtitle.lengthmin, 
     193 foltia_subtitle.pid, foltia_subtitle.startoffset 
     194FROM foltia_subtitle , foltia_program ,foltia_station   
     195WHERE foltia_program.tid = foltia_subtitle.tid AND foltia_station.stationid = foltia_subtitle.stationid  
     196 AND foltia_subtitle.enddatetime >= ?   
     197ORDER BY foltia_subtitle.startdatetime  ASC  
     198LIMIT 1000 
     199        "; 
    180200}//end if 
    181201 
    182 if ($maxrows == 0) { 
     202//$rs = m_query($con, $query, "DBクエリに失敗しました"); 
     203$rs = sql_query($con, $query, "DBクエリに失敗しました",array($now)); 
     204$rowdata = $rs->fetch(); 
     205if (! $rowdata) { 
    183206header("Status: 404 Not Found",TRUE,404); 
    184207printtitle(); 
     
    211234<? 
    212235                /* フィールド数 */ 
    213                $maxcols = pg_num_fields($rs); 
     236    $maxcols = $rs->columnCount(); 
    214237                ?> 
    215238  <table BORDER="0" CELLPADDING="0" CELLSPACING="2" WIDTH="100%"> 
     
    230253                <?php 
    231254                        /* テーブルのデータを出力 */ 
    232                         for ($row = 0; $row < $maxrows; $row++) { /* 行に対応 */ 
    233                                 /* pg_fetch_row で一行取り出す */ 
    234                                 $rowdata = pg_fetch_row($rs, $row); 
    235  
     255     do { 
    236256//他局で同一番組録画済みなら色変え 
    237257if (in_array($rowdata[7], $reservedpidsametid)) { 
     
    283303 
    284304                                echo("</tr>\n"); 
    285                         } 
     305     } while ($rowdata = $rs->fetch()); 
    286306                ?> 
    287307        </tbody> 
  • trunk/install/php/listreserve.php

    r90 r94  
    6262        $query = " 
    6363SELECT 
    64 foltia_program .tid, 
    65 stationname, 
    66 foltia_program .title, 
    67 foltia_subtitle.countno, 
    68 foltia_subtitle.subtitle, 
    69 foltia_subtitle.startdatetime , 
    70 foltia_subtitle.lengthmin , 
    71 foltia_tvrecord.bitrate  ,  
    72 foltia_subtitle.startoffset ,  
    73 foltia_subtitle.pid ,  
    74 foltia_subtitle.epgaddedby ,  
     64 foltia_program.tid, stationname, foltia_program.title, 
     65 foltia_subtitle.countno, foltia_subtitle.subtitle, 
     66 foltia_subtitle.startdatetime as x, foltia_subtitle.lengthmin, 
     67 foltia_tvrecord.bitrate, foltia_subtitle.startoffset, 
     68 foltia_subtitle.pid, foltia_subtitle.epgaddedby, 
    7569foltia_tvrecord.digital  
    7670FROM foltia_subtitle , foltia_program ,foltia_station ,foltia_tvrecord 
    7771WHERE foltia_tvrecord.tid = foltia_program.tid AND foltia_tvrecord.stationid = foltia_station .stationid AND foltia_program.tid = foltia_subtitle.tid AND foltia_station.stationid = foltia_subtitle.stationid 
    78 AND foltia_subtitle.enddatetime >= '$now' 
     72AND foltia_subtitle.enddatetime >= ?  
    7973UNION 
    8074SELECT 
    81 foltia_program .tid, 
    82 stationname, 
    83 foltia_program .title, 
    84 foltia_subtitle.countno, 
    85 foltia_subtitle.subtitle, 
    86 foltia_subtitle.startdatetime , 
    87 foltia_subtitle.lengthmin , 
    88 foltia_tvrecord.bitrate ,  
    89 foltia_subtitle.startoffset ,  
    90 foltia_subtitle.pid ,  
    91 foltia_subtitle.epgaddedby ,  
     75 foltia_program.tid, stationname, foltia_program.title, 
     76 foltia_subtitle.countno, foltia_subtitle.subtitle, 
     77 foltia_subtitle.startdatetime, foltia_subtitle.lengthmin, 
     78 foltia_tvrecord.bitrate,  foltia_subtitle.startoffset, 
     79 foltia_subtitle.pid,  foltia_subtitle.epgaddedby, 
    9280foltia_tvrecord.digital  
    9381FROM foltia_tvrecord 
     
    9684LEFT OUTER JOIN foltia_station on (foltia_subtitle.stationid = foltia_station.stationid ) 
    9785WHERE foltia_tvrecord.stationid = 0 AND 
    98 foltia_subtitle.enddatetime >= '$now' ORDER BY \"startdatetime\" ASC 
     86 foltia_subtitle.enddatetime >= ? ORDER BY x ASC 
    9987        "; 
    10088 
    101         $rs = m_query($con, $query, "DBクエリに失敗しました"); 
    102         $maxrows = pg_num_rows($rs); 
    103                          
     89//      $rs = m_query($con, $query, "DBクエリに失敗しました"); 
     90        $rs = sql_query($con, $query, "DBクエリに失敗しました",array($now,$now)); 
    10491 
    10592//チューナー数 
     
    122109 
    123110<? 
    124         if ($maxrows == 0) { 
     111     $rowdata = $rs->fetch(); 
     112     if (! $rowdata) { 
    125113                print "番組データがありません<BR>\n";                       
    126114                }else{ 
    127  
    128  
    129115                /* フィールド数 */ 
    130                $maxcols = pg_num_fields($rs); 
     116             $maxcols = $rs->columnCount(); 
    131117                ?> 
    132118  <table BORDER="0" CELLPADDING="0" CELLSPACING="2" WIDTH="100%"> 
     
    149135                <?php 
    150136                        /* テーブルのデータを出力 */ 
    151                        for ($row = 0; $row < $maxrows; $row++) { /* 行に対応 */ 
     137                  do { 
    152138                                echo("<tr>\n"); 
    153                                 /* pg_fetch_row で一行取り出す */ 
    154                                 $rowdata = pg_fetch_row($rs, $row); 
     139 
    155140$pid = htmlspecialchars($rowdata[9]); 
    156141 
     
    168153$query = " 
    169154SELECT 
    170 foltia_program .tid, 
    171 stationname, 
    172 foltia_program .title, 
    173 foltia_subtitle.countno, 
    174 foltia_subtitle.subtitle, 
    175 foltia_subtitle.startdatetime , 
    176 foltia_subtitle.lengthmin , 
    177 foltia_tvrecord.bitrate  ,  
    178 foltia_subtitle.startoffset ,  
    179 foltia_subtitle.pid  ,  
    180 foltia_tvrecord.digital  
     155 foltia_program.tid, stationname, foltia_program.title, 
     156 foltia_subtitle.countno, foltia_subtitle.subtitle, 
     157 foltia_subtitle.startdatetime, foltia_subtitle.lengthmin, 
     158 foltia_tvrecord.bitrate, foltia_subtitle.startoffset, 
     159 foltia_subtitle.pid, foltia_tvrecord.digital 
    181160FROM foltia_subtitle , foltia_program ,foltia_station ,foltia_tvrecord 
    182161WHERE foltia_tvrecord.tid = foltia_program.tid AND foltia_tvrecord.stationid = foltia_station .stationid AND foltia_program.tid = foltia_subtitle.tid AND foltia_station.stationid = foltia_subtitle.stationid 
    183 AND foltia_subtitle.enddatetime > '$rowdata[5]'  
    184 AND foltia_subtitle.startdatetime < '$endtime'   
     162AND foltia_subtitle.enddatetime > ?  
     163AND foltia_subtitle.startdatetime < ?   
    185164UNION 
    186165SELECT 
    187 foltia_program .tid, 
    188 stationname, 
    189 foltia_program .title, 
    190 foltia_subtitle.countno, 
    191 foltia_subtitle.subtitle, 
    192 foltia_subtitle.startdatetime , 
    193 foltia_subtitle.lengthmin , 
    194 foltia_tvrecord.bitrate  ,  
    195 foltia_subtitle.startoffset ,  
    196 foltia_subtitle.pid ,  
    197 foltia_tvrecord.digital  
     166 foltia_program.tid, stationname, foltia_program.title, 
     167 foltia_subtitle.countno, foltia_subtitle.subtitle, 
     168 foltia_subtitle.startdatetime, foltia_subtitle.lengthmin, 
     169 foltia_tvrecord.bitrate, foltia_subtitle.startoffset, 
     170 foltia_subtitle.pid, foltia_tvrecord.digital 
    198171FROM foltia_tvrecord 
    199172LEFT OUTER JOIN foltia_subtitle on (foltia_tvrecord.tid = foltia_subtitle.tid ) 
     
    201174LEFT OUTER JOIN foltia_station on (foltia_subtitle.stationid = foltia_station.stationid ) 
    202175WHERE foltia_tvrecord.stationid = 0 AND 
    203 foltia_subtitle.enddatetime > '$rowdata[5]'   
    204 AND foltia_subtitle.startdatetime < '$endtime'   
    205        "; 
     176foltia_subtitle.enddatetime > ?   
     177AND foltia_subtitle.startdatetime < ?   
     178"; 
    206179        $rclass = ""; 
    207         $overlap = m_query($con, $query, "DBクエリに失敗しました"); 
    208         $overlapmaxrows = pg_num_rows($overlap); 
     180//      $overlap = m_query($con, $query, "DBクエリに失敗しました"); 
     181        $overlap = sql_query($con, $query, "DBクエリに失敗しました",array($rowdata[5],$endtime,$rowdata[5],$endtime)); 
     182                          $owrowall = $overlap->fetchAll(); 
     183                          $overlapmaxrows = count($owrowall); 
    209184        if ($overlapmaxrows > ($recunits) ){ 
    210185                 
     
    212187                 
    213188                for ($rrow = 0; $rrow < $overlapmaxrows ; $rrow++) { 
    214                         $owrowdata = pg_fetch_array($overlap, $rrow)
     189                                         $owrowdata = $owrowall[$rrow]
    215190                        $owtimeline[ $owrowdata['startdatetime'] ] = $owtimeline[ $owrowdata['startdatetime'] ] +1; 
    216191                         
     
    237212$query = " 
    238213SELECT 
    239 foltia_program .tid, 
    240 stationname, 
    241 foltia_program .title, 
    242 foltia_subtitle.countno, 
    243 foltia_subtitle.subtitle, 
    244 foltia_subtitle.startdatetime , 
    245 foltia_subtitle.lengthmin , 
    246 foltia_tvrecord.bitrate  ,  
    247 foltia_subtitle.startoffset ,  
    248 foltia_subtitle.pid  ,  
    249 foltia_tvrecord.digital  
     214 foltia_program.tid, stationname, foltia_program.title, 
     215 foltia_subtitle.countno, foltia_subtitle.subtitle, 
     216 foltia_subtitle.startdatetime, foltia_subtitle.lengthmin, 
     217 foltia_tvrecord.bitrate, foltia_subtitle.startoffset, 
     218 foltia_subtitle.pid, foltia_tvrecord.digital 
    250219FROM foltia_subtitle , foltia_program ,foltia_station ,foltia_tvrecord 
    251220WHERE foltia_tvrecord.tid = foltia_program.tid AND foltia_tvrecord.stationid = foltia_station .stationid AND foltia_program.tid = foltia_subtitle.tid AND foltia_station.stationid = foltia_subtitle.stationid 
    252 AND foltia_subtitle.enddatetime > '$rowdata[5]'  
    253 AND foltia_subtitle.startdatetime < '$endtime'   
     221AND foltia_subtitle.enddatetime > ?  
     222AND foltia_subtitle.startdatetime < ?   
    254223AND  (foltia_station.stationrecch = '0' OR  foltia_station.stationrecch = '-1' )  
    255224UNION 
    256225SELECT 
    257 foltia_program .tid, 
    258 stationname, 
    259 foltia_program .title, 
    260 foltia_subtitle.countno, 
    261 foltia_subtitle.subtitle, 
    262 foltia_subtitle.startdatetime , 
    263 foltia_subtitle.lengthmin , 
    264 foltia_tvrecord.bitrate  ,  
    265 foltia_subtitle.startoffset ,  
    266 foltia_subtitle.pid ,  
    267 foltia_tvrecord.digital  
     226 foltia_program.tid, stationname, foltia_program.title, 
     227 foltia_subtitle.countno, foltia_subtitle.subtitle, 
     228 foltia_subtitle.startdatetime, foltia_subtitle.lengthmin, 
     229 foltia_tvrecord.bitrate, foltia_subtitle.startoffset, 
     230 foltia_subtitle.pid, foltia_tvrecord.digital 
    268231FROM foltia_tvrecord 
    269232LEFT OUTER JOIN foltia_subtitle on (foltia_tvrecord.tid = foltia_subtitle.tid ) 
     
    271234LEFT OUTER JOIN foltia_station on (foltia_subtitle.stationid = foltia_station.stationid ) 
    272235WHERE foltia_tvrecord.stationid = 0 AND 
    273 foltia_subtitle.enddatetime > '$rowdata[5]'   
    274 AND foltia_subtitle.startdatetime < '$endtime'   
     236foltia_subtitle.enddatetime > ?   
     237AND foltia_subtitle.startdatetime < ?   
    275238AND  (foltia_station.stationrecch = '0' OR  foltia_station.stationrecch = '-1' )  
    276  
    277239        "; 
    278         $eoverlap = m_query($con, $query, "DBクエリに失敗しました"); 
    279         $eoverlapmaxrows = pg_num_rows($eoverlap); 
     240//      $eoverlap = m_query($con, $query, "DBクエリに失敗しました"); 
     241        $eoverlap = sql_query($con, $query, "DBクエリに失敗しました",array($rowdata[5], $endtime,$rowdata[5],  $endtime)); 
     242                          $eowrowall = $eoverlap->fetchAll(); 
     243                          $eoverlapmaxrows = count($eowrowall); 
    280244        if ($eoverlapmaxrows > ($externalinputs) ){ 
    281245                 
     
    283247                 
    284248                for ($erow = 0; $erow < $eoverlapmaxrows ; $erow++) { 
    285                         $eowrowdata = pg_fetch_array($eoverlap, $erow)
     249                                         $eowrowdata = $eowrowall[$erow]
    286250                        $eowtimeline[ $eowrowdata['startdatetime'] ] = $eowtimeline[ $eowrowdata['startdatetime'] ] +1; 
    287251                         
     
    359323                                        echo("<br></td>\n"); 
    360324                                echo("</tr>\n"); 
    361                        } 
     325                  } while ($rowdata = $rs->fetch()); 
    362326                ?> 
    363327        </tbody> 
     
    374338 
    375339<?php 
    376 } //if ($maxrows == 0) { 
    377  
    378  
     340    } //if ($maxrows == 0) 
    379341        $query = " 
    380342SELECT  
    381 foltia_program.tid, 
    382 stationname, 
    383 foltia_program .title , 
    384 foltia_tvrecord.bitrate , 
    385 foltia_tvrecord.stationid ,  
     343 foltia_program.tid, stationname, foltia_program.title, 
     344 foltia_tvrecord.bitrate, foltia_tvrecord.stationid,  
    386345foltia_tvrecord.digital    
    387346FROM  foltia_tvrecord , foltia_program , foltia_station  
     
    389348ORDER BY foltia_program.tid  DESC 
    390349"; 
    391       $rs = m_query($con, $query, "DBクエリに失敗しました"); 
    392         $maxrows = pg_num_rows($rs); 
    393                        
    394                if ($maxrows == 0) { 
     350//    $rs = m_query($con, $query, "DBクエリに失敗しました"); 
     351        $rs = sql_query($con, $query, "DBクエリに失敗しました"); 
     352$rowdata = $rs->fetch();                       
     353if (! $rowdata) { 
    395354//なければなにもしない 
    396355                         
    397356                }else{ 
    398                $maxcols = pg_num_fields($rs); 
     357        $maxcols = $rs->columnCount(); 
    399358 
    400359?> 
     
    417376                <?php 
    418377                        /* テーブルのデータを出力 */ 
    419                         for ($row = 0; $row < $maxrows; $row++) { /* 行に対応 */ 
    420                                 /* pg_fetch_row で一行取り出す */ 
    421                                 $rowdata = pg_fetch_row($rs, $row); 
    422  
     378             do { 
    423379                                $tid = htmlspecialchars($rowdata[0]); 
    424380                                 
     
    468424                                echo("\n</tr>"); 
    469425                                }//if tid 0 
    470                        }//for 
     426             } while ($rowdata = $rs->fetch()); 
    471427                }//else 
    472428                ?> 
  • trunk/install/php/m.php

    r83 r94  
    9797SELECT stationname   
    9898FROM foltia_station  
    99 WHERE stationid = $recstid"; 
    100         $stationvalid = m_query($con, $query, "DBクエリに失敗しました"); 
    101         $stationcount = pg_num_rows($stationvalid); 
    102  
    103         if ($stationcount == 1){ 
    104                 $recstationname = pg_fetch_row($stationvalid, 0); 
    105         //valid 
    106         }else{ 
     99WHERE stationid = ? "; 
     100//      $stationvalid = m_query($con, $query, "DBクエリに失敗しました"); 
     101        $stationvalid = sql_query($con, $query, "DBクエリに失敗しました",array($recstid)); 
     102                $recstationname = $stationvalid->fetch(); 
     103                if (! $recstationname) { 
    107104                $errflag = 3; 
    108105                $errmsg = "放送局設定が異常です。"; 
     
    128125//min pidを探す 
    129126$query = "SELECT min(pid) FROM  foltia_subtitle "; 
    130         $rs = m_query($con, $query, "DBクエリに失敗しました"); 
    131         $maxrows = pg_num_rows($rs); 
    132         if ($maxrows == 0){ 
    133         $insertpid = -1 ; 
     127//      $rs = m_query($con, $query, "DBクエリに失敗しました"); 
     128        $rs = sql_query($con, $query, "DBクエリに失敗しました"); 
     129        $rowdata = $rs->fetch(); 
     130        if (! $rowdata) { 
     131                $insertpid = -1 ; 
    134132        }else{ 
    135         $rowdata = pg_fetch_row($rs, 0); 
    136         $insertpid = $rowdata[0]; 
    137         $insertpid-- ; 
     133                if ($rowdata[0] > 0) { 
     134                        $insertpid = -1 ; 
     135                }else{ 
     136                        $insertpid = $rowdata[0]; 
     137                        $insertpid-- ; 
     138                } 
    138139        } 
    139140// next 話数を探す 
    140141$query = "SELECT max(countno) FROM  foltia_subtitle WHERE tid = 0"; 
    141         $rs = m_query($con, $query, "DBクエリに失敗しました"); 
    142         $maxrows = pg_num_rows($rs); 
    143         if ($maxrows == 0){ 
     142//      $rs = m_query($con, $query, "DBクエリに失敗しました"); 
     143        $rs = sql_query($con, $query, "DBクエリに失敗しました"); 
     144                        $rowdata = $rs->fetch(); 
     145                        if (! $rowdata) { 
    144146        $nextcno = 1 ; 
    145147        }else{ 
    146         $rowdata = pg_fetch_row($rs, 0); 
    147148        $nextcno = $rowdata[0]; 
    148149        $nextcno++ ; 
     
    159160        insert into foltia_subtitle  (pid ,tid ,stationid , countno ,subtitle , 
    160161startdatetime ,enddatetime ,startoffset , lengthmin , epgaddedby )   
    161         values ( '$insertpid','0','$recstid', 
    162                 '$nextcno','$pname','$startdatetime','$enddatetime','0' ,'$lengthmin', '$memberid')"; 
     162        values ( ?,'0',?,?,?,?,?,'0',?,?)"; 
    163163         
    164                 $rs = m_query($con, $query, "DBクエリに失敗しました"); 
     164//              $rs = m_query($con, $query, "DBクエリに失敗しました"); 
     165//print "【DEBUG】$insertpid,$recstid,$nextcno,$pname,$startdatetime,$enddatetime ,$lengthmin,$memberid <br>\n"; 
     166                $rs = sql_query($con, $query, "DBクエリに失敗しました",array($insertpid,$recstid,$nextcno,$pname,$startdatetime,$enddatetime ,$lengthmin,$memberid)); 
    165167         
    166168        //addatq.pl 
     
    168170        //引数 TID チャンネルID 
    169171        //echo("$toolpath/perl/addatq.pl $tid $station"); 
    170          
    171                 $oserr = system("$toolpath/perl/addatq.pl 0 0"); 
     172        exec("$toolpath/perl/addatq.pl 0 0"); 
     173        $oserr = system("$toolpath/perl/addatq.pl 0 0"); 
     174        //--------------------------------------------------- 
     175                        if ($oserr){ 
     176                        print "[DEBUG]$oserr 「$toolpath/perl/addatq.pl 0 0」<br>\n"; 
     177                }else{ 
     178                        print "[DEBUG]exec addatq.pl false 「$toolpath/perl/addatq.pl 0 0」<br>\n"; 
     179                         
     180                        $oserr = system("$toolpath/perl/perltestscript.pl"); 
     181                        if ($oserr){ 
     182                                print "[DEBUG]exec perltestscript.pl $oserr<br>\n"; 
     183                        }else{ 
     184                                print "[DEBUG]exec perltestscript.pl false <br>\n"; 
     185                        } 
     186                         
     187                } 
     188        //----------------------------------------------------- 
    172189        }else{ 
    173190                print "EPG予約を行う権限がありません。"; 
     
    200217}// 初回表示かデータ処理か 
    201218?> 
    202 <form id="record" name="record" method="get" action="./m.php"
     219<form id="record" name="record" method="get" action="./m.php" autocomplete="off"
    203220  <p>放送日: 
    204221    <input name="startdate" type="text" id="startdate" size="9" value="<?=$startdate?>" /> 
     
    215232<?php 
    216233$query = " 
    217 SELECT stationid,stationname,stationrecch ,digitalch  
     234SELECT stationid as x, stationname, stationrecch, digitalch  
    218235FROM foltia_station  
    219236WHERE stationrecch > 0  
     
    221238SELECT DISTINCT  stationid,stationname,stationrecch ,digitalch  
    222239FROM  foltia_station  
    223 WHERE digitalch > 0 
    224 ORDER BY \"stationid\" ASC"; 
    225  
    226         $stations = m_query($con, $query, "DBクエリに失敗しました"); 
    227         $stationcount = pg_num_rows($stations); 
    228          
    229 if ($stationcount > 0 ){ 
    230         for ($row = 0; $row < $stationcount ; $row++) { 
    231                 $rowdata = pg_fetch_row($stations, $row); 
     240WHERE digitalch > 0  
     241ORDER BY x ASC"; 
     242 
     243$stations = sql_query($con, $query, "DBクエリに失敗しました"); 
     244$rowdata = $stations->fetch(); 
     245 
     246if ($rowdata) { 
     247                           do { 
    232248                        if ($recstid == $rowdata[0]){ 
    233                         print " <input name=\"recstid\" type=\"radio\" value=\"$rowdata[0]\" checked />  $rowdata[1] ($rowdata[2]ch) \n"; 
     249                        print " <input name=\"recstid\" type=\"radio\" value=\"$rowdata[0]\" checked />  $rowdata[1] ($rowdata[2]ch / $rowdata[3]ch) \n"; 
    234250                        }else{ 
    235                                 print " <input name=\"recstid\" type=\"radio\" value=\"$rowdata[0]\" />  $rowdata[1] ($rowdata[2]ch) \n"; 
     251                                print " <input name=\"recstid\" type=\"radio\" value=\"$rowdata[0]\" />  $rowdata[1] ($rowdata[2]ch / $rowdata[3]ch) \n"; 
    236252                        } 
    237         } 
     253                          } while ($rowdata = $stations->fetch()); 
    238254}else{ 
    239255print "放送局データベースが正しくセットアップされていません。録画可能局がありません"; 
    240256} 
    241  
     257//外部入力チャンネル 
    242258$query = " 
    243 SELECT stationid,stationname,stationrecch  
     259SELECT stationid as x ,stationname,stationrecch  
    244260FROM foltia_station  
    245261WHERE stationrecch > -2 AND stationrecch < 1  
    246 ORDER BY \"stationid\" ASC"; 
    247  
    248         $stations = m_query($con, $query, "DBクエリに失敗しました"); 
    249         $stationcount = pg_num_rows($stations); 
    250          
    251 if ($stationcount > 0 ){ 
    252         for ($row = 0; $row < $stationcount ; $row++) { 
    253                 $rowdata = pg_fetch_row($stations, $row); 
     262ORDER BY x ASC"; 
     263 
     264//      $stations = m_query($con, $query, "DBクエリに失敗しました"); 
     265        $stations = sql_query($con, $query, "DBクエリに失敗しました"); 
     266$rowdata = $stations->fetch();   
     267if ($rowdata) { 
     268        do { 
    254269                if ($rowdata[0] != 0){ 
    255270                        if ($recstid == $rowdata[0]){ 
     
    260275 
    261276                } 
    262         } 
     277        } while ($rowdata = $stations->fetch()); 
    263278} 
    264279/* 
  • trunk/install/php/reservecomp.php

    r83 r94  
    6767 
    6868//タイトル取得 
    69         $query = "select title from foltia_program where tid='$tid'"; 
    70       $rs = m_query($con, $query, "DBクエリに失敗しました"); 
    71         $maxrows = pg_num_rows($rs); 
    72                          
    73                if ($maxrows == 0) { 
     69        $query = "select title from foltia_program where tid = ? "; 
     70//    $rs = m_query($con, $query, "DBクエリに失敗しました"); 
     71        $rs = sql_query($con, $query, "DBクエリに失敗しました",array($tid)); 
     72$rowdata = $rs->fetch(); 
     73if (! $rowdata) { 
    7474                $title = "(未登録)"; 
    7575                }else{ 
    76                 $rowdata = pg_fetch_row($rs, 0); 
    7776                $title = htmlspecialchars($rowdata[0]); 
    7877                } 
     
    130129} 
    131130        $rs = m_query($con, $query, "DBクエリに失敗しました"); 
    132         $maxrows = pg_num_rows($rs); 
    133                          
    134                 if ($maxrows == 0) { 
     131$rowdata = $rs->fetch(); 
     132if (! $rowdata) { 
    135133                echo("放映予定はいまのところありません<BR>"); 
    136134                } 
    137135                else{ 
    138                $maxcols = pg_num_fields($rs);           
     136        $maxcols = $rs->columnCount(); 
    139137?> 
    140138  <table BORDER="0" CELLPADDING="0" CELLSPACING="2" WIDTH="100%" BGCOLOR="#bcf1be"> 
     
    155153                <?php 
    156154                        /* テーブルのデータを出力 */ 
    157                         for ($row = 0; $row < $maxrows; $row++) { /* 行に対応 */ 
     155       do { 
    158156                                echo("<tr>\n"); 
    159                                 /* pg_fetch_row で一行取り出す */ 
    160                                 $rowdata = pg_fetch_row($rs, $row); 
    161  
    162157                                for ($col = 0; $col < $maxcols; $col++) { /* 列に対応 */ 
    163158                                        echo("<td>".htmlspecialchars($rowdata[$col])."<br></td>\n"); 
    164159                                } 
    165160                                echo("</tr>\n"); 
    166                         } 
     161       } while ($rowdata = $rs->fetch()); 
    167162                }//end if 
    168163                ?> 
     
    177172//既存が予約あって、新着が全局予約だったら 
    178173if ($station ==0){ 
    179         $query = " 
    180 SELECT  
    181  *  
    182 FROM foltia_tvrecord   
    183 WHERE tid = '$tid'  
    184 "; 
    185         $rs = m_query($con, $query, "DBクエリに失敗しました"); 
    186         $maxrows = pg_num_rows($rs); 
    187         if ($maxrows > 0){ 
    188174        //既存局を消す 
    189175                $query = "DELETE  
    190176FROM foltia_tvrecord   
    191 WHERE tid = '$tid'  
    192 "; 
    193       $rs = m_query($con, $query, "DBクエリに失敗しました"); 
    194                } 
     177WHERE tid = ?  
     178"; 
     179//    $rs = m_query($con, $query, "DBクエリに失敗しました"); 
     180        $rs = sql_query($con, $query, "DBクエリに失敗しました",array($tid)); 
    195181}//endif 
    196182 
    197183        $query = " 
    198184SELECT  
    199  *  
     185count(*)  
    200186FROM foltia_tvrecord   
    201 WHERE tid = '$tid'  AND stationid = '$station'  
    202 "; 
    203       $rs = m_query($con, $query, "DBクエリに失敗しました"); 
    204         $maxrows = pg_num_rows($rs); 
    205  
     187WHERE tid = ?  AND stationid = ?  
     188"; 
     189//    $rs = m_query($con, $query, "DBクエリに失敗しました"); 
     190        $rs = sql_query($con, $query, "DBクエリに失敗しました",array($tid,$station)); 
     191        $maxrows = $rs->fetchColumn(0); 
    206192                if ($maxrows == 0) { //新規追加 
    207                                 $query = "INSERT INTO  foltia_tvrecord  values ('$tid','$station','$bitrate','$usedigital')"; 
    208                                 $rs = m_query($con, $query, "DB書き込みに失敗しました"); 
     193                                $query = "INSERT INTO  foltia_tvrecord  values (?,?,?,?)"; 
     194//                              $rs = m_query($con, $query, "DB書き込みに失敗しました"); 
     195                                $rs = sql_query($con, $query, "DB書き込みに失敗しました",array($tid,$station,$bitrate,$usedigital)); 
    209196                }else{//修正 (ビットレート) 
    210197                        $query = "UPDATE  foltia_tvrecord  SET  
    211   bitrate = '$bitrate' , digital = '$usedigital'  WHERE tid = '$tid'  AND stationid = '$station' "; 
    212                         $rs = m_query($con, $query, "DB書き込みに失敗しました"); 
     198  bitrate = ? , digital = ? WHERE tid = ? AND stationid = ? "; 
     199//                      $rs = m_query($con, $query, "DB書き込みに失敗しました"); 
     200                        $rs = sql_query($con, $query, "DB書き込みに失敗しました",array( $bitrate, $usedigital , $tid , $station )); 
    213201                } 
    214202         
  • trunk/install/php/reserveepg.php

    r70 r94  
    5656        stationname , stationrecch ,stationid  
    5757        FROM foltia_epg , foltia_station  
    58         WHERE epgid='$epgid' AND foltia_station.ontvcode = foltia_epg.ontvchannel 
     58        WHERE epgid = ? AND foltia_station.ontvcode = foltia_epg.ontvchannel 
    5959        ";//4812 
    60       $rs = m_query($con, $query, "DBクエリに失敗しました"); 
    61         $maxrows = pg_num_rows($rs); 
    62                          
    63                if ($maxrows == 0) { 
     60//    $rs = m_query($con, $query, "DBクエリに失敗しました"); 
     61        $rs = sql_query($con, $query, "DBクエリに失敗しました",array($epgid)); 
     62$rowdata = $rs->fetch(); 
     63if (! $rowdata) { 
    6464                die_exit("登録番組がありません<BR>"); 
    6565                } 
    66                 $rowdata = pg_fetch_row($rs, 0); 
     66 
    6767                //$title = htmlspecialchars($rowdata[0]); 
    6868?> 
     
    136136$query = " 
    137137SELECT 
    138 foltia_program .title, 
    139 foltia_program .tid, 
    140 stationname, 
    141 foltia_station.stationid ,   
    142 foltia_subtitle.countno, 
    143 foltia_subtitle.subtitle, 
    144 foltia_subtitle.startdatetime , 
    145 foltia_subtitle.lengthmin , 
    146 foltia_tvrecord.bitrate  ,  
    147 foltia_subtitle.startoffset ,  
    148 foltia_subtitle.pid   
     138 foltia_program.title, foltia_program.tid, stationname, 
     139 foltia_station.stationid, foltia_subtitle.countno, 
     140 foltia_subtitle.subtitle, foltia_subtitle.startdatetime, 
     141 foltia_subtitle.lengthmin, foltia_tvrecord.bitrate, 
     142 foltia_subtitle.startoffset, foltia_subtitle.pid 
    149143FROM foltia_subtitle , foltia_program ,foltia_station ,foltia_tvrecord 
    150144WHERE foltia_tvrecord.tid = foltia_program.tid AND foltia_tvrecord.stationid = foltia_station .stationid AND foltia_program.tid = foltia_subtitle.tid AND foltia_station.stationid = foltia_subtitle.stationid 
    151 AND foltia_subtitle.startdatetime ='$startfoltime'  
    152 AND foltia_subtitle.enddatetime = '$endfoltime'  
    153 AND foltia_station.stationid = '$stationid'   
     145AND foltia_subtitle.startdatetime = ?  
     146AND foltia_subtitle.enddatetime = ?  
     147AND foltia_station.stationid = ?  
    154148UNION 
    155149SELECT 
    156 foltia_program .title, 
    157 foltia_program .tid, 
    158 stationname, 
    159 foltia_station.stationid ,   
    160 foltia_subtitle.countno, 
    161 foltia_subtitle.subtitle, 
    162 foltia_subtitle.startdatetime , 
    163 foltia_subtitle.lengthmin , 
    164 foltia_tvrecord.bitrate ,  
    165 foltia_subtitle.startoffset ,  
    166 foltia_subtitle.pid   
     150 foltia_program.title, foltia_program.tid, stationname, 
     151 foltia_station.stationid, foltia_subtitle.countno, 
     152 foltia_subtitle.subtitle, foltia_subtitle.startdatetime, 
     153 foltia_subtitle.lengthmin, foltia_tvrecord.bitrate, 
     154 foltia_subtitle.startoffset, foltia_subtitle.pid 
    167155FROM foltia_tvrecord 
    168156LEFT OUTER JOIN foltia_subtitle on (foltia_tvrecord.tid = foltia_subtitle.tid ) 
     
    170158LEFT OUTER JOIN foltia_station on (foltia_subtitle.stationid = foltia_station.stationid ) 
    171159WHERE foltia_tvrecord.stationid = 0  
    172 AND foltia_subtitle.startdatetime ='$startfoltime'  
    173 AND foltia_subtitle.enddatetime = '$endfoltime'  
    174 AND foltia_station.stationid = '$stationid'  
     160AND foltia_subtitle.startdatetime = ?  
     161AND foltia_subtitle.enddatetime = ?  
     162AND foltia_station.stationid = ?  
    175163"; 
    176164 
    177  
    178  
    179         $rs = m_query($con, $query, "DBクエリに失敗しました"); 
    180         $maxrows = pg_num_rows($rs); 
    181  
    182165//print "<!--$query \n $maxrows\n -->"; 
    183166 
    184167print "<form name=\"recordingsetting\" method=\"POST\" action=\"reserveepgcomp.php\">\n"; 
    185168 
    186                 if ($maxrows == 0) { 
     169//$rs = m_query($con, $query, "DBクエリに失敗しました"); 
     170$rs = sql_query($con, $query, "DBクエリに失敗しました",array($startfoltime,$endfoltime,$stationid,$startfoltime,$endfoltime,$stationid)); 
     171$chkoverwrap = $rs->fetch(); 
     172if (! $chkoverwrap) { 
    187173                //重複なし 
    188174                print "<input type=\"submit\" value=\"予約\" ><br>\n"; 
    189175                }else{ 
    190                 $chkoverwrap = pg_fetch_row($rs, 0); 
    191176                $prereservedtitle = htmlspecialchars($chkoverwrap[0]); 
    192177                $tid =  htmlspecialchars($chkoverwrap[1]); 
  • trunk/install/php/reserveepgcomp.php

    r83 r94  
    7272//min pidを探す 
    7373$query = "SELECT min(pid) FROM  foltia_subtitle "; 
    74         $rs = m_query($con, $query, "DBクエリに失敗しました"); 
    75         $maxrows = pg_num_rows($rs); 
    76         if ($maxrows == 0){ 
     74//      $rs = m_query($con, $query, "DBクエリに失敗しました"); 
     75        $rs = sql_query($con, $query, "DBクエリに失敗しました"); 
     76        $rowdata = $rs->fetch(); 
     77        if (! $rowdata) { 
    7778        $insertpid = -1 ; 
    7879        }else{ 
    79         $rowdata = pg_fetch_row($rs, 0); 
    80          
    8180        $insertpid = $rowdata[0]; 
    8281                if ($insertpid > 0){ 
     
    8887// next 話数を探す 
    8988$query = "SELECT max(countno) FROM  foltia_subtitle WHERE tid = 0"; 
    90         $rs = m_query($con, $query, "DBクエリに失敗しました"); 
    91         $maxrows = pg_num_rows($rs); 
    92         if ($maxrows == 0){ 
     89//      $rs = m_query($con, $query, "DBクエリに失敗しました"); 
     90        $rs = sql_query($con, $query, "DBクエリに失敗しました"); 
     91        $rowdata = $rs->fetch(); 
     92        if (! $rowdata) { 
    9393        $nextcno = 1 ; 
    9494        }else{ 
    95         $rowdata = pg_fetch_row($rs, 0); 
    9695        $nextcno = $rowdata[0]; 
    9796        $nextcno++ ; 
     
    124123insert into foltia_subtitle  (pid ,tid ,stationid , countno ,subtitle , 
    125124startdatetime ,enddatetime ,startoffset , lengthmin , epgaddedby )  
    126 values ( '$insertpid','0','$stationid', 
    127        '$nextcno','$subtitle','$startdatetime','$enddatetime','0' ,'$lengthmin' , '$memberid')"
    128         $rs = m_query($con, $query, "DBクエリに失敗しました"); 
     125values ( ?,'0',?,?,?,?,?,'0',?,?)"; 
     126//     $rs = m_query($con, $query, "DBクエリに失敗しました")
     127        $rs = sql_query($con, $query, "DBクエリに失敗しました",array($insertpid,$stationid,$nextcno,$subtitle,$startdatetime,$enddatetime,$lengthmin,$memberid)); 
    129128 
    130129        //addatq.pl 
  • trunk/install/php/reserveprogram.php

    r83 r94  
    5353 
    5454//タイトル取得 
    55         $query = "select title from foltia_program where tid='$tid'"; 
    56       $rs = m_query($con, $query, "DBクエリに失敗しました"); 
    57        $maxrows = pg_num_rows($rs); 
    58                          
    59                if ($maxrows == 0) { 
     55        $query = "select title from foltia_program where tid = ? "; 
     56//    $rs = m_query($con, $query, "DBクエリに失敗しました"); 
     57$rs = sql_query($con, $query, "DBクエリに失敗しました",array($tid)); 
     58$rowdata = $rs->fetch(); 
     59if (! $rowdata) { 
    6060                die_exit("登録番組がありません<BR>"); 
    6161                } 
    62                 $rowdata = pg_fetch_row($rs, 0); 
     62 
    6363                $title = htmlspecialchars($rowdata[0]); 
    6464?> 
     
    100100FROM foltia_subtitle , foltia_program ,foltia_station   
    101101WHERE foltia_program.tid = foltia_subtitle.tid AND foltia_station.stationid = foltia_subtitle.stationid  
    102  AND foltia_program.tid ='$tid'  
     102 AND foltia_program.tid = ?  
    103103ORDER BY stationrecch DESC 
    104104"; 
    105  
    106         $rs = m_query($con, $query, "DBクエリに失敗しました"); 
    107         $maxrows = pg_num_rows($rs); 
    108                          
    109                 if ($maxrows == 0) { 
     105//      $rs = m_query($con, $query, "DBクエリに失敗しました"); 
     106$rs = sql_query($con, $query, "DBクエリに失敗しました",array($tid)); 
     107$rowdata = $rs->fetch(); 
     108if (! $rowdata) { 
    110109                echo("放映局情報がまだはいってません<BR>"); 
    111110                } 
    112111                else{ 
    113                $maxcols = pg_num_fields($rs); 
     112        $maxcols = $rs->columnCount(); 
    114113                 
    115114                        echo("<select name=\"station\">\n"); 
    116115                        /* テーブルのデータを出力 */ 
    117                         for ($row = 0; $row < $maxrows; $row++) { /* 行に対応 */ 
    118                                 /* pg_fetch_row で一行取り出す */ 
    119                                 $rowdata = pg_fetch_row($rs, $row); 
     116        do { 
    120117                                echo("<option value=\""); 
    121118                                echo(htmlspecialchars($rowdata[0])); 
     
    123120                                echo(htmlspecialchars($rowdata[1])); 
    124121                                echo("</option>\n"); 
    125                        }//for 
     122        } while ($rowdata = $rs->fetch()); 
    126123                        echo("<option value=\"0\">全局</option>\n</select>\n"); 
    127124                }//endif                 
     
    182179FROM foltia_subtitle , foltia_program ,foltia_station   
    183180WHERE foltia_program.tid = foltia_subtitle.tid AND foltia_station.stationid = foltia_subtitle.stationid  
    184  AND foltia_subtitle.startdatetime >= '$now'  AND foltia_program.tid ='$tid'  
     181 AND foltia_subtitle.startdatetime >= ?  AND foltia_program.tid = ?  
    185182ORDER BY foltia_subtitle.startdatetime  ASC 
    186183"; 
    187       $rs = m_query($con, $query, "DBクエリに失敗しました"); 
    188        $maxrows = pg_num_rows($rs); 
    189                          
    190                if ($maxrows == 0) { 
     184//    $rs = m_query($con, $query, "DBクエリに失敗しました"); 
     185$rs = sql_query($con, $query, "DBクエリに失敗しました",array($now,$tid)); 
     186$rowdata = $rs->fetch(); 
     187if (! $rowdata) { 
    191188                echo("放映予定はありません<BR>"); 
    192189                } 
    193190                else{ 
    194                $maxcols = pg_num_fields($rs);           
     191        $maxcols = $rs->columnCount(); 
    195192?> 
    196193  <table BORDER="0" CELLPADDING="0" CELLSPACING="2" WIDTH="100%" BGCOLOR="#bcf1be"> 
     
    210207                <?php 
    211208                        /* テーブルのデータを出力 */ 
    212                         for ($row = 0; $row < $maxrows; $row++) { /* 行に対応 */ 
     209       do { 
    213210                                echo("<tr>\n"); 
    214                                 /* pg_fetch_row で一行取り出す */ 
    215                                 $rowdata = pg_fetch_row($rs, $row); 
    216  
    217211                                for ($col = 0; $col < $maxcols; $col++) { /* 列に対応 */ 
    218212                                        if ($col == 3){ 
     
    223217                                } 
    224218                                echo("</tr>\n"); 
    225                         } 
     219       } while ($rowdata = $rs->fetch()); 
    226220                }//end if 
    227221                ?> 
  • trunk/install/php/selectcaptureimage.php

    r85 r94  
    7474FROM foltia_subtitle , foltia_program ,foltia_station   
    7575WHERE foltia_program.tid = foltia_subtitle.tid AND foltia_station.stationid = foltia_subtitle.stationid  
    76  AND foltia_subtitle.pid = '$pid'   
     76 AND foltia_subtitle.pid = ?   
    7777  
    7878        "; 
    79         $rs = m_query($con, $query, "DBクエリに失敗しました"); 
    80 $rows = pg_num_rows($rs); 
    81 if ($rows == 0){ 
     79//      $rs = m_query($con, $query, "DBクエリに失敗しました"); 
     80$rs = sql_query($con, $query, "DBクエリに失敗しました",array($pid)); 
     81$rowdata = $rs->fetch(); 
     82if (! $rowdata) { 
    8283        print "  <p align=\"left\"><font color=\"#494949\" size=\"6\">キャプチャ画像</font></p> 
    8384  <hr size=\"4\"> 
     
    8788 
    8889}else{ 
    89 $rowdata = pg_fetch_row($rs, 0); 
    90  
    9190print "  <p align=\"left\"><font color=\"#494949\" size=\"6\">キャプチャ画像</font></p> 
    9291  <hr size=\"4\"> 
  • trunk/install/php/showlib.php

    r83 r94  
    8484"; 
    8585 
    86 $rs = m_query($con, $query, "DBクエリに失敗しました"); 
    87  
    88 $maxrows = pg_num_rows($rs); 
    89  
    90 if ($maxrows > 0 ){ 
     86//$rs = m_query($con, $query, "DBクエリに失敗しました"); 
     87$rs = sql_query($con, $query, "DBクエリに失敗しました"); 
     88$rowdata = $rs->fetch(); 
     89if ($rowdata) { 
    9190if(ereg("iPhone",$useragent)){ 
    9291        print "<ul id=\"home\" title=\"録画ライブラリ表示\" selected=\"true\">"; 
     
    105104"; 
    106105} 
    107 for ($row = 0; $row < $maxrows; $row++) { 
    108         $rowdata = pg_fetch_row($rs, $row); 
     106        do { 
    109107$title = $rowdata[1]; 
    110108$counts = $rowdata[2]; 
     
    125123"; 
    126124} 
    127 }//for 
     125        } while ($rowdata = $rs->fetch()); 
    128126 
    129127if(ereg("iPhone",$useragent)){ 
     
    160158"; 
    161159$rs = m_query($con, $query, "DBクエリに失敗しました"); 
    162 $rowdata = pg_fetch_row($rs, $row); 
     160$rowdata = $rs->fetch(); 
    163161//print" $fName./$rowdata[1]/$rowdata[2]/$rowdata[3]<BR>\n"; 
    164162$title = $rowdata[1]; 
  • trunk/install/php/showlibc.php

    r83 r94  
    6868SELECT foltia_program.title   
    6969FROM  foltia_program    
    70 WHERE foltia_program.tid = $tid   
    71 "; 
    72 $rs = m_query($con, $query, "DBクエリに失敗しました"); 
    73 $maxrows = pg_num_rows($rs); 
    74 if ($maxrows == 0 ){ 
    75  $syobocaldb = `curl "http://cal.syoboi.jp/db?Command=TitleLookup&TID=$tid" | head -2 `; 
     70WHERE foltia_program.tid = ?  
     71"; 
     72//$rs = m_query($con, $query, "DBクエリに失敗しました"); 
     73$rs = sql_query($con, $query, "DBクエリに失敗しました",array($tid)); 
     74$rowdata = $rs->fetch(); 
     75if (! $rowdata) { 
     76$syobocaldb = `curl "http://cal.syoboi.jp/db?Command=TitleLookup&TID=$tid" | head -2 `; 
    7677$syobocaldb = mb_convert_encoding($syobocaldb, "EUC-JP", "UTF-8"); 
    7778        $syobocaldb = preg_match("/<Title>.*<\/Title>/", $syobocaldb,$title); 
     
    8081        $title =  htmlspecialchars($title) ; 
    8182}else{ 
    82 $rowdata = pg_fetch_row($rs, 0); 
    8383$title = $rowdata[0]; 
    8484$title =  htmlspecialchars($title) ; 
     
    143143LEFT JOIN foltia_program   
    144144ON foltia_mp4files.tid = foltia_program.tid  
    145 WHERE foltia_mp4files.tid = $tid   
     145WHERE foltia_mp4files.tid = ?   
    146146ORDER BY \"startdatetime\" ASC 
    147147"; 
    148148 
    149149$rs = ""; 
    150 $rs = m_query($con, $query, "DBクエリに失敗しました"); 
    151 $maxrows = pg_num_rows($rs); 
    152 if ($maxrows > 0 ){ 
     150//$rs = m_query($con, $query, "DBクエリに失敗しました"); 
     151$rs = sql_query($con, $query, "DBクエリに失敗しました",array($tid)); 
     152$rowdata = $rs->fetch(); 
     153if ($rowdata) { 
    153154if(ereg("iPhone",$useragent)){ 
    154155        print "<ul id=\"home\" title=\"$title\" selected=\"true\">"; 
     
    159160"; 
    160161} 
    161 for ($row = 0; $row < $maxrows; $row++) { 
    162         $rowdata = pg_fetch_row($rs, $row); 
    163  
     162        do { 
    164163$title = $rowdata[1]; 
    165164 
     
    195194} 
    196195//Starlight Breaker向け拡張 
    197 //$debug_pg_num_rows = pg_num_rows ($rs ); 
     196//$debug_pg_num_rows = $rs ->rowCount(); 
    198197$caplink = ""; 
    199198 
    200 if (($sbpluginexist == 1) && (pg_num_rows ($rs ) > 0))
     199               if ($sbpluginexist == 1)
    201200 //$capimgpath = htmlspecialchars(preg_replace("/.m2p/", "", $rowdata[5])); 
    202201 $capimgpath = htmlspecialchars(preg_replace("/.m2./", "", $rowdata[5])); 
     
    244243}//endif iPhone 
    245244 
    246 }//for 
     245        } while ($rowdata = $rs->fetch()); 
    247246}else{ 
    248247print "録画ファイルがありません<br>\n"; 
  • trunk/install/php/showplaylist.php

    r83 r94  
    115115FROM foltia_subtitle , foltia_program    
    116116WHERE foltia_program.tid = foltia_subtitle.tid   
    117  AND foltia_subtitle.tid = $filesplit[0]  
    118 "; 
    119 $rs = m_query($con, $query, "DBクエリに失敗しました"); 
    120 $rowdata = pg_fetch_row($rs, $row); 
     117 AND foltia_subtitle.tid = ?  
     118"; 
     119//$rs = m_query($con, $query, "DBクエリに失敗しました"); 
     120$rs = sql_query($con, $query, "DBクエリに失敗しました",array($filesplit[0])); 
     121                                $rall = $rs->fetchAll(); 
     122                                $rowdata = $rall[$row]; 
    121123//print" $fName./$rowdata[1]//$rowdata[2]<BR>\n"; 
    122124$title = $rowdata[1]; 
     
    130132FROM foltia_subtitle , foltia_program    
    131133WHERE foltia_program.tid = foltia_subtitle.tid   
    132  AND foltia_subtitle.tid = $filesplit[0]  
    133  AND foltia_subtitle.countno = $filesplit[1]  
    134 "; 
    135 $rs = m_query($con, $query, "DBクエリに失敗しました"); 
    136 $rowdata = pg_fetch_row($rs, $row); 
     134 AND foltia_subtitle.tid = ?  
     135 AND foltia_subtitle.countno = ?  
     136"; 
     137//$rs = m_query($con, $query, "DBクエリに失敗しました"); 
     138$rs = sql_query($con, $query, "DBクエリに失敗しました",array($filesplit[0],$filesplit[1])); 
     139                                $rall = $rs->fetchAll(); 
     140                                $rowdata = $rall[$row]; 
    137141//print" $fName./$rowdata[1]/$rowdata[2]/$rowdata[3]<BR>\n"; 
    138142$title = $rowdata[1]; 
     
    197201} 
    198202 
    199 $rs = m_query($con, $query, "DBクエリに失敗しました"); 
    200 $maxrows = pg_num_rows($rs); 
    201  
    202 if ($maxrows > 0){ 
    203 for ($row = 0; $row < $maxrows; $row++) {  
    204 $rowdata = pg_fetch_row($rs, $row); 
    205  
     203//$rs = m_query($con, $query, "DBクエリに失敗しました"); 
     204$rs = sql_query($con, $query, "DBクエリに失敗しました"); 
     205$rowdata = $rs->fetch(); 
     206if ($rowdata) { 
     207        do { 
    206208$tid = htmlspecialchars($rowdata[0]); 
    207209$title = htmlspecialchars($rowdata[1]); 
     
    235237print "</tr>\n 
    236238"; 
    237 }//for 
     239        } while ($rowdata = $rs->fetch()); 
    238240}else{ 
    239241print " 
     
    262264"; 
    263265 
    264 $rs = m_query($con, $query, "DBクエリに失敗しました"); 
    265 $maxrows = pg_num_rows($rs); 
    266  
    267  
    268 if ($maxrows > 0){ 
     266//$rs = m_query($con, $query, "DBクエリに失敗しました"); 
     267$rs = sql_query($con, $query, "DBクエリに失敗しました"); 
     268        $rowdata = $rs->fetch(); 
     269        if ($rowdata) { 
    269270print "<hr> 
    270271<p align=\"left\">未読タイトルを表示します。<br> 
     
    279280"; 
    280281 
    281 for ($row = 0; $row < $maxrows; $row++) {  
    282 $rowdata = pg_fetch_row($rs, $row); 
    283  
     282                do { 
    284283$tid = htmlspecialchars($rowdata[0]); 
    285284$title = htmlspecialchars($rowdata[1]); 
    286285 
    287  
    288286print "<tr><td>$tid</td><td>$title</td></tr>\n"; 
    289287 
    290 }//for 
     288                } while ($rowdata = $rs->fetch()); 
    291289print "</tbody></table>\n"; 
    292290}//if maxrows 
  • trunk/install/php/titlelist.php

    r70 r94  
    5151ORDER BY foltia_program.tid  DESC 
    5252        "; 
    53       $rs = m_query($con, $query, "DBクエリに失敗しました"); 
    54        $maxrows = pg_num_rows($rs); 
    55                          
    56                if ($maxrows == 0) { 
     53//    $rs = m_query($con, $query, "DBクエリに失敗しました"); 
     54$rs = sql_query($con, $query, "DBクエリに失敗しました"); 
     55$rowdata = $rs->fetch(); 
     56if (! $rowdata) { 
    5757                die_exit("番組データがありません<BR>"); 
    58                          
    5958                } 
    60  
    6159?> 
    6260 
     
    7270<? 
    7371                /* フィールド数 */ 
    74                $maxcols = pg_num_fields($rs); 
     72$maxcols = $rs->columnCount(); 
    7573                ?> 
    7674  <table BORDER="0" CELLPADDING="0" CELLSPACING="2" WIDTH="100%"> 
     
    8684                <?php 
    8785                        /* テーブルのデータを出力 */ 
    88                         for ($row = 0; $row < $maxrows; $row++) { /* 行に対応 */ 
     86    do { 
    8987                                echo("<tr>\n"); 
    90                                 /* pg_fetch_row で一行取り出す */ 
    91                                 $rowdata = pg_fetch_row($rs, $row); 
     88 
    9289                                //TID 
    9390                                        echo("<td><a href=\"reserveprogram.php?tid=" . 
     
    10097                                        print "<td><A HREF = \"showlibc.php?tid=".htmlspecialchars($rowdata[0])."\">mp4</A></td>\n"; 
    10198                                echo("</tr>\n"); 
    102                         } 
     99    } while ($rowdata = $rs->fetch()); 
    103100                ?> 
    104101        </tbody> 
  • trunk/install/php/view_syabas.php

    r86 r94  
    5656FROM foltia_subtitle , foltia_program ,foltia_station   
    5757WHERE foltia_program.tid = foltia_subtitle.tid AND foltia_station.stationid = foltia_subtitle.stationid  
    58  AND foltia_subtitle.pid = '$pid'   
    59   
    60         "; 
    61         $rs = m_query($con, $query, "DBクエリに失敗しました"); 
    62  
    63 $rows = pg_num_rows($rs); 
    64 if ($rows == 0){ 
     58 AND foltia_subtitle.pid = ? "; 
     59//      $rs = m_query($con, $query, "DBクエリに失敗しました"); 
     60$rs = sql_query($con, $query, "DBクエリに失敗しました",array($pid)); 
     61$rowdata = $rs->fetch(); 
     62if (! $rowdata) { 
    6563        print ""; 
    6664        exit; 
    6765}else{ 
    68 $rowdata = pg_fetch_row($rs, 0); 
    69  
    7066$title = $rowdata[2]; 
    7167$episode = $rowdata[3]; 
  • trunk/install/php/viewepg.php

    r91 r94  
    9191$maxdisplay = 8; 
    9292 
    93         $query = "SELECT stationid, stationname, stationrecch, ontvcode FROM foltia_station WHERE \"ontvcode\" ~~ '%ontvjapan%'  
    94         "; 
    95         $rs = m_query($con, $query, "DBクエリに失敗しました"); 
    96         $maxrows = pg_num_rows($rs); 
    97  
     93$query = "SELECT count(*) FROM foltia_station WHERE \"ontvcode\" LIKE '%ontvjapan%'"; 
     94//$rs = m_query($con, $query, "DBクエリに失敗しました"); 
     95$rs = sql_query($con, $query, "DBクエリに失敗しました"); 
     96$maxrows = $rs->fetchColumn(0); 
    9897if ($maxrows > $maxdisplay){ 
    9998        $pages = ceil($maxrows / $maxdisplay) ; 
     
    138137$query = "SELECT stationid, stationname, stationrecch, ontvcode  
    139138FROM foltia_station  
    140 WHERE \"ontvcode\" ~~ '%ontvjapan%'   
     139WHERE \"ontvcode\" LIKE '%ontvjapan%'   
    141140ORDER BY stationid ASC , stationrecch  
    142 OFFSET $offset LIMIT $maxdisplay  
     141LIMIT ? OFFSET ? 
    143142"; 
    144 $slistrs = m_query($con, $query, "DBクエリに失敗しました"); 
    145 $stations =  pg_num_rows($slistrs); 
    146 for ($i=0 ; $i < $stations ; $i++){ 
    147         $rowdata = pg_fetch_row($slistrs, $i); 
    148         $stationhash[$i] = $rowdata[3] ; 
     143 
     144//$slistrs = m_query($con, $query, "DBクエリに失敗しました"); 
     145$slistrs = sql_query($con, $query, "DBクエリに失敗しました",array($maxdisplay,$offset)); 
     146while ($rowdata = $slistrs->fetch()) { 
     147        $stationhash[] = $rowdata[3]; 
     148        $snames[] = $rowdata[1]; // headder 
    149149} 
    150150 
     
    158158        SELECT ontvcode  
    159159        FROM foltia_station  
    160         WHERE \"ontvcode\" ~~ '%ontvjapan%'   
     160        WHERE \"ontvcode\" LIKE '%ontvjapan%'   
    161161        ORDER BY stationid ASC , stationrecch  
    162         OFFSET $offset LIMIT $maxdisplay 
     162        LIMIT ? OFFSET ? 
    163163        ) 
    164 AND startdatetime  >= $start  
    165 AND startdatetime  < $epgend  
     164AND startdatetime  >= ?  
     165AND startdatetime  < ?  
    166166ORDER BY foltia_epg.startdatetime  ASC  "; 
    167167 
    168 $rs = m_query($con, $query, "DBクエリに失敗しました"); 
     168//$rs = m_query($con, $query, "DBクエリに失敗しました"); 
     169$rs = sql_query($con, $query, "DBクエリに失敗しました",array($maxdisplay,$offset,$start,$epgend)); 
    169170 
    170171//print "$query<br>\n"; 
    171172 
    172 $colmnums =  pg_num_rows($rs); 
    173 if ($colmnums == 0)
     173$rowdata = $rs->fetch(); 
     174if (! $rowdata)
    174175//番組データがない 
    175176$colmnums = 2; 
    176177}else{ 
    177         for ($i=0 ; $i < $colmnums ; $i++){ 
    178                 $rowdata = pg_fetch_row($rs, $i); 
    179                 $timetablehash["$rowdata[0]"] = ($i + 1); 
     178        $colmnums = 0; 
     179        do { 
     180                $colmnums++; 
     181                $timetablehash[$rowdata[0]] = $colmnums; 
    180182//              print "$rowdata[0]:$i+1 <br>\n"; 
    181         } 
     183        } while ($rowdata = $rs->fetch()); 
    182184} 
    183185//print "colmnums $colmnums <br>\n"; 
    184186 
    185187//・局ごとに縦に配列入れていく 
    186 for ($j=0 ; $j < $stations ; $j++){ 
    187         $rowdata = pg_fetch_row($slistrs, $j); 
    188         $stationname = $rowdata[3]; 
    189  
     188foreach ($stationhash as $stationname) { 
    190189$epgstart = $start ; 
    191190$epgend = calcendtime($start , (8*60)); 
     
    193192SELECT startdatetime , enddatetime , lengthmin , epgtitle , epgdesc , epgcategory  ,ontvchannel  ,epgid ,       epgcategory  
    194193FROM foltia_epg  
    195 WHERE foltia_epg.ontvchannel = '$stationname' AND  
    196 enddatetime  > $epgstart  AND  
    197 startdatetime  < $epgend   
     194WHERE foltia_epg.ontvchannel = ? AND  
     195enddatetime  > ?  AND  
     196startdatetime  < ?   
    198197ORDER BY foltia_epg.startdatetime  ASC 
    199198        "; 
    200         $statiodh = m_query($con, $query, "DBクエリに失敗しました"); 
    201         $maxrowsstation = pg_num_rows($statiodh); 
    202  
    203 //print "maxrowsstation $maxrowsstation  stationname $stationname<br>\n"; 
    204  
    205 if ($maxrowsstation == 0) { 
     199 
     200//      $statiodh = m_query($con, $query, "DBクエリに失敗しました"); 
     201        $statiodh = sql_query($con, $query, "DBクエリに失敗しました",array($stationname,$epgstart,$epgend)); 
     202        $stationrowdata = $statiodh->fetch(); 
     203        if (! $stationrowdata) { 
    206204                //print("番組データがありません<BR>"); 
    207205                $item[0]["$stationname"] =  ">番組データがありません"; 
    208206}else{ 
    209  
    210 for ($srow = 0; $srow < $maxrowsstation ; $srow++) {  
    211           
    212 $stationrowdata = pg_fetch_row($statiodh, $srow); 
    213  
     207                do { 
    214208$printstarttime = substr($stationrowdata[0],8,2) . ":" .  substr($stationrowdata[0],10,2); 
    215209$tdclass = "t".substr($stationrowdata[0],8,2) .  substr($stationrowdata[0],10,2); 
     
    235229}//if 
    236230 
    237 }//for 
     231                } while ($stationrowdata = $statiodh->fetch()); 
    238232}//if 
    239233 
     
    291285 
    292286//ヘッダ 
    293 for ($i=0;$i<$stations;$i++){ 
    294         $rowdata = pg_fetch_row($slistrs, $i); 
    295         print "<th>".htmlspecialchars($rowdata[1])."</th>" ; 
     287foreach ($snames as $s) { 
     288        print "<th>".htmlspecialchars($s)."</th>" ; 
    296289} 
    297290//本体 
    298291for ($l = 0 ;$l <  $colmnums; $l++){ 
    299292        print "<tr>"; 
    300         for ($m = 0 ; $m < $stations ; $m++ ){ 
    301                 $stationname = $stationhash[$m]; 
     293        foreach ($stationhash as $stationname) { 
    302294                print_r($item[$l]["$stationname"]); 
    303295        } 
track feed