2017年7月26日 星期三

內小創作園地的二次修改

這次主要修改如下

1.橫向的按鈕編排,改成縱向
按鈕採用了漸層的方式

以阿壢的顏色為主體,往深色方向漸變
方法是: 如紅色的那三列
.mybtn {
    width:158px;
    padding:10px;
    color: #ffffff;
    background-color: #97e9ff;
    background-image: linear-gradient(to bottom, #97e9ff, #2f96b4);
    background-repeat: repeat-x;
    text-decoration: none;
    text-align:center;
    border-top-left-radius: 25px;
    border-bottom-left-radius: 25px;
    font-size:16px;
  }

2.作品列表改用展開的模式
這個使用 data-toggle='collapse' data-target='#semelist' 可以很容易就表現出來,但是要讓選擇list時自動展開,就發生困難了。
自動展開可以用
<script>
  $( document ).ready(function() {
      $('#semelist').addClass('in');
    });
</script>

但是一定要在 bootstrap.js之後,這個問題花了好多時間才發現。

3. 作品統計時依照年級會有漸層色彩,這部分尚未完成。

4.輸入框的模式改成如下的樣式
這個和game的有所不同,但是比較簡單

<style>
.my {
    border-top-right-radius: 25px;
    border-top-left-radius: 25px;
    background: #93E9FF;
    padding: 20px;
    width: 200px;
    height: 50px;
    border-collapse: separate;
}

.my2 {
    border-bottom-right-radius: 25px;
    border-bottom-left-radius: 25px;
    border: 2px solid #93E9FF;
    padding: 10px;
    width: 200px;
    height: 30px;
    text-align:center;
    border-collapse: separate;
}
</style>

5. ICON

2017年7月24日 星期一

幾個WP樣板裡用到的函數

esc_url :去掉 script標記

get_the_title() :取得標題
get_the_date('Y-m-d'):取得日期

$custom_query2->the_post(); 之後才能用

把日期加入frontpage (檔案名稱:frontpage.php)

1. $column增加date 於 tempera_ppcolumns() 函數的default段
while ($custom_query2->have_posts()) :
  $custom_query2->the_post();
  $img = wp_get_attachment_image_src( get_post_thumbnail_id( get_the_ID() ),'columns');
  $column['image'] = esc_url( $img[0] );
  $column['link'] = esc_url( get_permalink() );
  $column['text'] = get_the_excerpt();
  $column['title'] = get_the_title() ;
  $column['date'] = get_the_date('Y-m-d');
  $columns[] = $column;
  endwhile;

2.$coldata增加date 於 tempera_columns()

$coldata = array(
'colno' => (($counter%$nr_columns)?$counter%$nr_columns:$nr_columns),
'counter' => $counter,
'image' => esc_url( $column['image'] ),
'link' => esc_url( $column['link'] ),
'blank' => ($column['blank']?'target="_blank"':''),
'title' =>  wp_kses_data($column['title']),
'text' => wp_kses_data($column['text']),
'date' => $column['date'],
'readmore' => wp_kses_data($readmore),
);
3. 輸出於 tempera_singlecolumn_output() (檔案:includes/widget.php)
以 <div><?php echo $date; ?></div> 輸出

if ( ! function_exists('tempera_singlecolumn_output') ):
function tempera_singlecolumn_output($data){
    foreach ($data as $key => $value) { ${"$key"} = $value; }
    ?>
        <div class="pp-column column<?php echo $colno; ?>">
            <?php if (!empty($image)) {    ?>
                <a href="<?php echo $link; ?>" <?php echo $blank; ?> class="clickable-column">
                    <?php if (!empty($title)) { echo "<h3 class='column-header-image'>".$title."</h3>"; } ?>
                </a>
        <?php
          if (!empty($date)) {
             echo "<div>{$date}</div>";
          }
        ?>
                <div class="column-image">
                    <div class="column-image-inside">  </div>
                        <a href="<?php echo $link; ?>" <?php echo $blank; ?> class="clickable-column">
                            <img src="<?php echo esc_url($image) ?>" alt="<?php echo (!empty($title)?wp_kses($title,array()):''); ?>" />
                        </a>
                   
                    <?php if (!empty($text)) { ?>       
                        <div class="column-text">
                            <?php echo $text; ?>                           
                        </div>
                    <?php } ?>
                    <?php if ( !empty($readmore) && !empty($link) ) { ?>
                        <div class="columnmore">
                            <a href="<?php echo $link; ?>" <?php echo $blank; ?>><?php echo $readmore ?> <i class="column-arrow"></i> </a>
                        </div>
                    <?php } ?>
                </div><!--column-image-->
            <?php } ?>
        </div><!-- column -->
    <?php
} // tempera_singlecolumn_output()
endif;


2017年7月19日 星期三

call by name

$selN=$selS=$sela=$selb=$selc=$seld=$sele=$selg=$selh=$seli=$selj='';
$sel1=$sel2=$sel3=$sel4=$sel5=$sel6=$schname='';   

當$group和$kind決定了,就可以用

  $a="sel{$group}";
  ${$a}='selected';
  $a="sel{$kind}";
  ${$a}='selected';

這種方式指定,當然也可以用陣列

底下是另外一種方式:
  $active0=$active1='';
  ${"active{$kind}"}="class='active'";

2017年7月16日 星期日

查資料題目

※請依序回答下列問題(105年決賽) 
一.桃園市升格為直轄市之後,市政府期許帶給民眾更便民的公共交通資訊服務,以提升桃園市民的生活品質。
 1、請查出桃園公車動態資訊系統(Taoyuan City Bus Time System)的最簡網址:____________________。 
 2、大華的爺爺住在桃園區公所附近,今天想搭乘免費市民公車「L128三民線」到桃園榮民醫院看病,請查出: 
A.請查出樂活巴「L128三民線」平日所有發車時刻: 
B.爺爺下午14:30到桃園區公所等車,根據公車動態資訊系統查詢,得知班車即將到站時間是幾點幾分: 
C.估計在幾點幾分會到達桃園榮民醫院? 

二. 陽光、空氣、水是構成生命的三要素,我們應善用政府部門相關網站,了解所處生活環境之溫度、水情及空氣品質等生活資訊。 
1、請查出下列網站最簡網址: 
 A.交通部中央氣象局:_________________________ 
 B.行政院環境保護署:_________________________ 
 C.經濟部水利署:______________________________ 
2.根據氣象局資料顯示,本日全台最低溫度前3名分別是?請依順序將測站名稱、測得溫度與時間列出。 
3.請查出中央氣象局104年9月1日修訂之「大雨」及「豪雨」定義: 
4.請根據中央氣象局雨量觀測,查出最近3日,全台雨量排名前3名之雨量測站名稱、位置與雨量。

2017年7月5日 星期三

以@開頭的班級

在line中以@開頭就是一個群
以同樣的觀念學生作品版中以@開頭的班級就是跨班級的群組名稱

既然是跨班級就不會有教人的情況,於是利用teach欄位儲存繳交作業者的實際班級

修改
[1]建立作業:只要標註@開頭是跨班級即可。
[2]觀看(view):顯示(teach欄位.座號)-姓名
[3]評分(score):另做(不以座號排,用技巧去排,單一列)
[4]上傳:將 teach顯示為班級,若是登入的學生直接將班級顯示出來。


技巧:

如何按照年班座號排序:
ORDER By Concat(`teach`,100+`sitnum`)





2017年7月4日 星期二

內壢國小最新消息發布限校內或用密碼

內壢國小最新消息發布限校內或用密碼,可使用進階設定中設定密碼

如果使用校內IP,將不需要輸入密碼,如果不使用校內IP,輸入密碼亦可觀看

程式碼修改範圍如下: class/tadnews.php 搜尋passwd 之前

    if(!empty($passwd)){  //chnage by mingchiu 2017/7/4
         if (substr($_SERVER['REMOTE_ADDR'],0,11)=='163.30.142.') {
           $passwd='';
           $_SESSION['have_pass'][]=$nsn;
         }
      }


由於IP寫死在程式碼內所以不適用其他學校,也不能應用於IPv6、無限網段,以及未來全面性更改IP時。

pclzip


解壓縮

參考 https://blog.hsin.tw/2008/php-pclzip/

基本用法

require_once('pclzip.lib.php');
$archive = new PclZip('archive.zip');
$archive->extract();
$archive = new PclZip($path & "/" & $file);
//指定目錄下的檔案
Thumbnails/thumbnail.png 
//解壓縮到extract/folder/這個目錄中
$list = $archive->extract(PCLZIP_OPT_PATH, "extract/folder/");
//將一個檔案內容解壓縮完後直接輸出(echo)
$list = $archive->extract(PCLZIP_OPT_BY_NAME, "Thumbnails/thumbnail.png",PCLZIP_OPT_EXTRACT_IN_OUTPUT);


直接讀取影像檔子程式
tool/odfpreview.php?file={$sn}/{$show_id}/{$show_fi}

技巧
  include "../include/pclzip.lib.php";
  $path = dirname(__DIR__);   
  $file = 'data/'.$_GET['file'];
  $archive = new PclZip($path.'/'.$file);
  header("Content-type: image/png");

  $list = $archive->extract(PCLZIP_OPT_BY_NAME,'Thumbnails/thumbnail.png' ,PCLZIP_OPT_EXTRACT_IN_OUTPUT);