分類: 資訊技術
【PHP】20181130課堂練習參考答案
-
製作一個輸入方塊,限制輸入1~7,輸出對應星期的英文:Mon, Tue, Wed, Thu, Fri, Sat, Sun
<form action="" method="POST">
輸入星期數字(1~7) : <input type="text" name="a">;
<input type="submit" value="送出" name="submit_btn">;
</form>
<?php
if(isset($_REQUEST[‘submit_btn’]))
{
$weekDay = array(”, ‘Mon’, ‘Tue’, ‘Wed’, ‘Thu’, ‘Fri’, ‘Sat’, ‘Sun’);
$a = $_POST["a"];
if ($a < 1 || $a >; 7) {
echo "輸入錯誤!只接受1~7的數字!";
exit();
}
echo "<H1>;".$weekDay[$a]."</H1>";
}
?>
[/code]
-
製作一個輸入方塊,限制輸入1~12,輸出對應月份的英文:January, February, March, April, May, June, July, August, September, October, November, December。(請參考上題。)
-
輸入月份的英文:January, February, March, April, May, June, July, August, September, October, November, December,輸出其代表的幾月。
輸入月份的英文名稱(January,… ) : <input type="text" name="month">
<input type="submit" value="送出" name="submit_btn">
</form>
<?php
if(isset($_REQUEST[‘submit_btn’])) {
$mt = array(‘January’=>1, ‘February’=>2, ‘March’=>3,
‘April’=>4, ‘May’=>5, ‘June’=>6,
‘July’=>7, ‘August’=>8, ‘September’=>9,
‘October’=>10, ‘November’=>11, ‘December’=>12);
$month = $_POST["month"];
$month[0] = strtoupper($month[0]);
echo "你輸入的月份英文名稱是:".$month;
echo "其月份數字為:".$mt[$month];
}
?>
[/code]
-
輸入身份證字號(字串),由第1個字元根據下表輸出出生地:
A=10 台北市 | J=18 新竹縣 | S=26 高雄縣 |
B=11 台中市 | K=19 苗栗縣 | T=27 屏東縣 |
C=12 基隆市 | L=20 台中縣 | U=28 花蓮縣 |
D=13 台南市 | M=21 南投縣 | V=29 台東縣 |
E=14 高雄市 | N=22 彰化縣 | W=32 金門縣 |
F=15 台北縣 | O=35 新竹市 | X=30 澎湖縣 |
G=16 宜蘭縣 | P=23 雲林縣 | Y=31 陽明山 |
H=17 桃園縣 | Q=24 嘉義縣 | Z=33 連江縣 |
I=34 嘉義市 | R=25 台南縣 |
輸入身份證字號 : <input type="text" name="id">
<input type="submit" value="送出" name="submit_btn">
</form>
<?php
if(isset($_REQUEST[‘submit_btn’])) {
$id_city = array(‘台北市’, ‘台中市’, ‘基隆市’,
‘台南市’, ‘高雄市’, ‘台北縣’,
‘宜蘭縣’, ‘桃園縣’, ‘新竹縣’,
‘苗栗縣’, ‘台中縣’, ‘南投縣’,
‘彰化縣’, ‘雲林縣’, ‘嘉義縣’,
‘台南縣’, ‘高雄縣’, ‘屏東縣’,
‘花蓮縣’, ‘台東縣’, ‘澎湖縣’,
‘陽明山’, ‘金門縣’, ‘連江縣 ‘,
‘嘉義市’, ‘新竹市’);
$id_city_1 = array(‘A’ => ‘台北市’, ‘B’ => ‘台中市’,
‘C’ => ‘基隆市’, ‘D’ => ‘台南市’,
‘E’ => ‘高雄市’, ‘F’ => ‘台北縣’);
//只寫前面幾個,完整的,請自行加入
$id = $_POST["id"]; //從輸入方塊取值,指定給變數$id
$id = trim($id); //除去輸入身份證(字串)的空白
echo $id.’…..’;
//將第一個字元轉大寫
$id[0]= strtoupper($id[0]);
echo "你身份證字號第1個字:".$id[0]."<br>";
//第一種方式,用整數索引的方式
echo "你的出身地是:".$id_city[ord($id[0])-65]."(整數索引)<br>";
//第二種種方式,用關連陣列索引的方式
echo "你的出身地是:".$id_city_1[$id[0]]."(關連陣列索引)<br>";
}
?>
[/code]
將分數分級程式以陣列方式改寫:
[code language=”php”]<form action="" method="POST">
請輸入你的成績 : <input type="text" name="score">
<input type="submit" value="送出" name="submit_btn">
</form>
<?php
$grade = array(‘E’, ‘E’, ‘E’, ‘E’, ‘E’, ‘E’, ‘D’, ‘C’, ‘B’, ‘A’, ‘A+’);
if(isset($_REQUEST[‘submit_btn’]))
{
$score = $_POST["score"];
if (! is_numeric($score)) {
echo "請輸入數值!";
exit();
}
if ($score <= 100 &amp;amp;&amp;amp; $score >= 0){
$s = (int)($score / 10);
echo $grade[$s];
}
else echo "輸入的值 $score 是錯的,必須在0~100之間";
}
?>
[/code]
【電子電路】烙鐵使用知識
- 新烙鐵頭第一次使用,打開電源開關,調到300度,紅燈閃馬上給新烙鐵頭上一層錫。等3分鐘後再調到310到370度左右使用。用完後在海綿(海綿泡水微擠)上清潔烙鐵頭,再上一層錫關機,起到保護烙鐵頭。
- 最佳焊錫溫度是310-370度之間。溫度調太高烙鐵頭容易氧化,會產生不上錫、發黑,並且減短烙鐵頭和發熱芯使用壽命。
- 烙鐵頭出現氧化不上錫或不沾錫,把溫度調到300度,反覆給頭上錫在海綿(海綿泡水微擠)上來回擦清潔,去掉頭的氧化物,然後再上錫使用。不清潔會產生氧化,出現溫度不夠假象,不沾錫者發黑的情況。另外要盡量保持烙鐵頭上有掛錫,防止烙鐵頭出現氧化 請注意換烙鐵頭先擰不鏽鋼羅母拆下套管,不能直接擰黑色電木羅母,不然會引起短路。
- 紅燈亮是在加熱,到達指定溫度一閃一閃,在恆溫(鎖定溫度)
【主機維護筆記】郵件系統異常 2018/08/21
狀況:發送郵件時發生550 unrouteable address異常
主機環境:Linux, CPanel, WHA
此次會發生這樣的問題,可能的原因:
1.前日圖資中心的網路防火牆讓學校內部的DNS封包出不了外面,我做了一些DNS處理,也因為不太熟悉DNS運作,把域名刪除,而導致後續的問題
2.也可能因為在解決問題的過程中,順道做了系統的升級…
解法:
1.DNS 及 MX 記錄檢查
檢查主機域名MX記錄
dig domain MX
2.Exim 設定
3.使用 Mail Troubleshooter檢查
4.Email -> Repair Mailbox Permissions (此次關鍵解決方式)
5.Web mail中的追踨傳送中可以觀察到正常/失敗的訊息原因
Google雲端硬碟與Office應用程式的整合
Google給學校師生的超級大禮:Google G-Suit for Education,無限的硬碟空間容量,弘光也有喔~~ :弘光Gmail資訊連結(趁在學時務必取得帳號,等畢業後要申請,得要花500元新台幣加入校友會,由校友會這邊提出申請)。
我們有了無限大的空間後,就要妥善運用了。
Google雲端硬碟提供了類Office的線上應用程式,但是,其格式並不與Office的格式100%相容,造成使用上一個很大的問題,我們有一個解決方案:使用「Google 雲端硬碟外掛程式 Microsoft Office 版」
使用上不難,下載安裝Google 雲端硬碟外掛程式 Microsoft Office 版應用程式後,就會在Office應用程式裏插入一個外掛,提供一個Google雲端硬碟的儲存位置選項:
「網站日誌」- 從192.192.246.169(獨立主機)轉移至wells.fgchen.com(虛擬主機)
2018/2/16 (農曆春節1/1)
心血來潮,將Wordpress從一台主機移到另一台主機(之前想做沒做,把原本獨立主機再挪出來另作他用),步驟:
- 將Wordpress網站建立tar ball, tar -xvf wp.tar ./wp/8
- 使用wget,將網站tar檔複製到新位置
- 解tar ball
- 將資料庫中所有的表格以SQL方式匯出,檔案太大,則進mysql,以soruce wp.sql方式進行匯入。
如果Domain URL不變的話,問題比較單純,底下是url變更下的處理方式:
UPDATE wp_options SET option_value = replace(option_value, 'http://www.oldurl', 'http://www.newurl') WHERE option_name = 'home' OR option_name = 'siteurl'; UPDATE wp_posts SET guid = replace(guid, 'http://www.oldurl','http://www.newurl'); UPDATE wp_posts SET post_content = replace(post_content, 'http://www.oldurl', 'http://www.newurl'); UPDATE wp_postmeta SET meta_value = replace(meta_value,'http://www.oldurl','http://www.newurl');
出現404 not found, 接著處理.htaccess,變更目錄 (由舊目錄改成新目錄)
<IfModule mod_rewrite.c> RewriteEngine On RewriteBase /wp RewriteRule ^(.*\/)?w3tc_rewrite_test([0-9]+)/?$ $1?w3tc_rewrite_test=1 [L] RewriteCond %{HTTP:Accept-Encoding} gzip RewriteRule .* - [E=W3TC_ENC:_gzip] RewriteCond %{HTTP_COOKIE} w3tc_preview [NC] RewriteRule .* - [E=W3TC_PREVIEW:_preview] RewriteCond %{REQUEST_METHOD} !=POST RewriteCond %{QUERY_STRING} ="" RewriteCond %{REQUEST_URI} \/$ RewriteCond %{HTTP_COOKIE} !(comment_author|wp\-postpass|w3tc_logged_out|wordpress_logged_in|wp RewriteCond "%{DOCUMENT_ROOT}/wp/wp-content/cache/page_enhanced/%{HTTP_HOST}/%{REQUEST_URI}/_in RewriteRule .* "/wp/wp-content/cache/page_enhanced/%{HTTP_HOST}/%{REQUEST_URI}/_index%{ENV:W3TC </IfModule> # END W3TC Page Cache core # BEGIN WordPress <IfModule mod_rewrite.c> RewriteEngine On RewriteBase /wp RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /wp/index.php [L] </IfModule>
舊網站Wiki也搬移完畢!
https://fgchen.com/wiki
下關鍵字:cpanel performance tuning找到一堆效能調整文章,確有成效!
3D立體拼圖 (雷射切割)
3D列印是一種加法加工法,適合製作奇形怪狀的物體,但是速度慢。
減法加工:CNC (電腦數值控制機,電腦車床)、雷射雕刻機、雷射切割機、刻印機…
在Thingiverse上下關鍵字”laser cut”,可找到許多可雷射切割的檔案,2D圖檔,非3D圖檔 (但是是3D圖) (Adobe AI檔 或 Autocad檔)
雷射切割(機)的特色(原理,英文)
- 精密
- 材質:紙板、木板、壓克力板、鋁板、金屬 (大雷射功率)
- 厚度:1, 2, 3, …. 1x mm
- 線條約磨耗0.2mm (雷射光束切割)
3D列印時,若整體印有問題 (形狀有懸空時),我們可以採取分片/分件列印,再用粘合、拼接/榫接的方式,組合,但是要注意的是接合處間隙的問題,使用雷射切割,切割掉的線條剛好讓組件可以有稍微磨擦的方式進行組合,但是3D列印若只是單純用單一線條 (二片間的線條是重疊的),印出來之後,會卡不進去,因此,我們若要用3D列印組合片,必須要製造出接合處的間隙 (而此間隙又必須考量印表機/線材的特性…)。
Japanese Wood Joint
Laser cut arts
Laser cut animals
laser cut box
倫敦電話亭
meArm機械手臂
組裝成品:
本週作業:
請自選一個模型,設計繪製其可雷射切割之模型,並製作2種形式的圖檔:
- 整體組合(3D)
- 展開、攤開、攤平可分別列印形式
展開圖例: