HTML5新屬性自動檢核表單與欄位格式是否填寫正確

參考網址:梅問題
參考網址:The art of web
參考網址:w3cplus pattern–HTML5的表单验证属性

表單驗證是件相當麻煩的事,除了要驗證欄位是否有填寫外,還要針對填入的資料格式是否正確,光是一個表單驗證,就相當的傷神,因此很早之前,也曾分享過一些驗表單的javascript套件,來解決這惱人的問題,但現在透過HTML5所提供的新屬性後,完全不用寫任何的程式,就可實現表單的驗證。

甚至還可審核資料格的是否正確,像是Email、網址、電話…..等,因此有表單驗證需求的朋友,現在也一塊來看看HTML5的個表單驗證要如何使用,與格式驗證的設定。

用法很簡單,只需在input的標籤加入「required」

<input name="text" id="text" type="text" required />

加入後,當未填寫就按送出時,就會跳出提示框。

當要驗證Email格式時,將type設為「email」,若是網址就為「url」

<input name="email" id="email" type="email" required />

除了驗證email與網址外,電話也是很重要的,由於電話編碼每個國家都不同,因此就不能透過type來作設定,而是用pattern這屬性,再加入正規表示法來作驗證,以手機來說,前四碼為電信商,後六碼為個人碼,所以可以這樣子寫 pattern='\d{4}[\-]\d{6}',這表示前方四碼輸入完後,需加入-隔開,再輸入六碼,這樣格式才正確。

<input name="mobile" id="mobile" pattern='\d{4}[\-]\d{6}' required />

若是室內電話時,再將pattern='\d{4}[\-]\d{6}'變成pattern='\d{2}[\-]\d{8}',這樣就大功告成了,是不是超EZ的呀!!且完全不用寫到任何的程式。

而這麼方便的功能,目前只有Safari不支援,其它的瀏覽器皆可正常運行。

 

發表於 程式設計 | 發表迴響

正規表示式語法測試及程式產生器

參考網址:https://regex101.com

說明文件
https://developer.mozilla.org/zh-TW/docs/Web/JavaScript/Guide/Regular_Expressions

發表於 程式設計 | 發表迴響

campus校園網站輕鬆架之tadnews模組block修改

tadnews模組中有個自訂頁面的自選文章block很好用
只是原本的block中有列出文章分類及人氣占用了寶貴的空間,有點多餘。
所以就動手修改block達到自己要的效果。
自選文章block的程式放在tadnews\blocks\tadnews_my_page.php
自選文章block的樣版放在tadnews\templates\blocks\tadnews_block_my_page.tpl
只需修改樣版檔就可以了,樣版檔內容是html應該很容易懂的。
 

<a href="<{$xoops_url}>/modules/tadnews/<{$page.index}>?nsn=<{$page.nsn}>"><{$page.news_title}></a></td>
改成
<a href="<{$xoops_url}>/modules/tadnews/page.php?nsn=<{$page.nsn}>"><{$page.news_title}></a></td>
<{$page.index}>內容為空值,直接指定為page.php

同場加映:複製區塊會在xx_newblocks資料表中加入一筆資料。

「自訂頁面選單」與「自選文章」區塊的區別:
「自訂頁面選單」只列出自訂頁面的文章
「自選文章」除了自訂頁面的文章外,也可以選擇最新消息的文章

發表於 Linux系統, 程式設計 | 發表迴響

UBUNTU 16.04 noip

參考網址:noip
ubuntu 16.04無法用apt install的方式取得noip2
官網提供安裝的方法
 

  1. cd /usr/local/src/
  2. wget http://www.no-ip.com/client/linux/noip-duc-linux.tar.gz
  3. tar xf noip-duc-linux.tar.gz
  4. cd noip-2.1.9-1/
  5. make install

noip命令

USAGE: noip2 [ -C [ -F][ -Y][ -L hosts_groups][ -U #min]

 

        [ -u username][ -p password][ -x progname]]

        [ -c file][ -d][ -D pid][ -i addr][ -S][ -M][ -h]

Version Linux-2.1.7

Options: -C                         create configuration data

               -F                          force NAT off

               -Y                          select all hosts/groups

               -L hosts_groups  select supplied hosts/groups

               -U minutes           set update interval

               -u username        use supplied username

               -p password        use supplied password

               -x executable       use supplied executable

               -c config_file        use alternate data path

               -d                           increase debug verbosity

               -D processID       toggle debug flag for PID

               -i IPaddress         use supplied address

               -I interface            use supplied interface

              -S                           show configuration data

              -M                          permit multiple instances

              -K processID        terminate instance PID

              -z                           activate shm dump code

              -h                           help (this text)

 

重新設定的話輸入

$ noip2 –C

 

已經有設定資料的話先刪除 noip porcess

$ noip2 –K processID

 

顯示現在電腦設定

$ noip2 –S

 設定檔放在
/usr/local/etc/no-ip2.conf.

但已經過編碼 

root@FH-ST:~# noip2 -S

1 noip2 process active.

 

Process 24342, started as noip2, (version 2.1.9)

Using configuration from /var/lib/noip2/noip2.conf

Last IP Address set 114.39.182.239

Account ——–@gmail.com

configured for:

host  fhst.ddns.net

Updating every 30 minutes via /dev/eth0 with NAT enabled. 

將/usr/local/bin/noip2放入/etc/rc.local

 

 

發表於 Linux系統 | 發表迴響

學生主機升級

將學生主機由ubuntu 11.04 升級至 16.04資料移動過程記錄

scp -r -p root@192.168.0.3:/home/711999 /home
權限無法複製,用劉勇炫老師的homechown.sh更改權限

samba
find / -name passdb.tdb
apt的samba密碼檔放在 /var/lib/samba/passdb.tdb
gcc的samba密碼檔放在 /usr/local/samba/private/passdb.tdb
scp -r -p root@192.168.0.3:/var/lib/samba/passdb.tdb /usr/local/samba/private

xrdp port更改 /etc/xrdp/xrdp.ini

mysql
apt install phpmyadmin
http://sp.idv.tw/blogs/index.php?op=ViewArticle&articleId=676&blogId=1
編輯mysql配置文件 my.cnf
(ubuntu 16.04放在/etc/mysql/mysql.conf.d/mysqld.cnf)
在 [mysqld]下添加
sql_mode=""


scp -r -p root@192.168.0.3:/var/lib/mysql/0_fh /var/lib/mysql
chown -R mysql.mysql 0_fh

scp -r -p root@192.168.0.3:/var/lib/mysql/0_fh1071 /var/lib/mysql
chown -R mysql.mysql 0_fh1071

scp -r -p root@192.168.0.3:/var/lib/mysql/gtpa /var/lib/mysql
chown -R mysql.mysql gtpa

html
scp -r -p root@192.168.0.3:/var/www/fh /var/www/html
scp -r -p root@192.168.0.3:/var/www/fh1071 /var/www/html
scp -r -p root@192.168.0.3:/var/www/xoops_data /var/www/html
scp -r -p root@192.168.0.3:/var/www/xoops_lib /var/www/html
scp -r -p root@192.168.0.3:/var/www/html /var/www/html
scp -r -p root@192.168.0.3:/var/www/php4 /var/www/html
scp -r -p root@192.168.0.3:/var/www/index.html /var/www/html
scp -r -p root@192.168.0.3:/var/www/gtpa /var/www/html

16.04安裝xrdp
http://honglung.pixnet.net/blog/post/167257893-windows-%E9%81%A0%E7%AB%AF%E6%A1%8C%E9%9D%A2%E9%80%A3%E7%B7%9A%E5%88%B0-ubuntu-16.04

安裝遠端桌面管理軟體
sudo apt-get install xfce4
sudo apt-get install xrdp

配置遠端桌面管理軟體
echo xfce4-session > ~/.xsession

 

XOOPS
$root_path    = "/var/www/html/fh1071";//這是主目錄
$xoop_up_path = "/var/www/html/fh1071";//這是xoops_data及xoops_lib的位置

 

DHCPD
apt install isc-dhcp-server
scp -r -p root@192.168.0.3:/etc/dhcp/dhcpd.conf /etc/dhcp

noip

UBUNTU 16.04 noip

192.168.0.3 192.168.0.9 IP已互換
ups
scp -r -p -P 8088 root@192.168.0.9:/root/ups /root
dpkg -i PPL_1.3.2_amd64.deb
pwrstat -status
service pwrstatd start

scp -r -p -P 8088 root@192.168.0.9:/home/51* /home

發表於 Linux系統 | 發表迴響

Google Dictionary 多國語言自動翻譯工具(Google Chrome 擴充套件)

參考網址:重灌狂人

Google Dictionary  這個工具主要是透過彈出訊息的方式顯示單字解釋,使用方式有兩種,1.將文字反白後自動顯示翻譯內容,或者 2.在文字上按兩下滑鼠左鍵才顯示翻譯內容。

兩種操作方式都可以搭配鍵盤快速鍵來使用,以避免混亂。譬如說,先按住「Ctrl」不放,然後在你要查的單字上按兩下滑鼠左鍵,可避免干擾其他功能的操作。

系統支援:此為 Google Chrome 瀏覽器專用擴充套件

官方網站:按這裡

軟體下載:用 Google Chrome 瀏覽器開啟「這個」網頁,按一下「安裝」按鈕,即可將程式安裝到電腦中

 

發表於 Windows系統 | 發表迴響

短網址

參考網址:電腦玩物-替代 goo.gl 的 8 種短網址服務

Google 短網址即將關閉,但已經建立的 goo.gl 將永久有效

Bit.ly 這個短網址服務,它的功能非常完整,有後台統計數據,最大特色就是可以自訂中文短網址。

例:http://bit.ly/2y4ZxEE

http://bit.ly/2E7xhGM

發表於 Windows系統 | 發表迴響

UBUNTU-劉勇炫老師網站

參考網址:myip
架站工具下載 YHTools

UbuntuLinux網管手冊

發表於 Linux系統 | 發表迴響

Docker -從入門到實踐

參考網址:gitbooks
竣庭推薦,應可解決UBUNTU套件向下相容問題
卓國興老師 文件

發表於 Linux系統 | 發表迴響

scp 指令用法

參考網址:gtwang

複製檔案與目錄

scp 指令的語法跟一般的 cp 類似,只不過 scp 可以在不同的 Linux 主機之間複製檔案,其語法為:

scp [帳號@來源主機]:來源檔案 [帳號@目的主機]:目的檔案

這裡的帳號就是登入主機上的帳號(類似 ssh 指令的用法),如果省略帳號與主機,只寫一般的檔案路徑的話,就是代表本機的檔案。

例如將本地端的 /path/file1 複製到 192.168.0.1 這台主機上的 /path/file2,而登入 192.168.0.1 這台主機時,是以 myuser 這個帳號登入:

# 從本地端複製到遠端
scp /path/file1 myuser@192.168.0.1:/path/file2

也可以把遠端的檔案複製到本地端:

# 從遠端複製到本地端
scp myuser@192.168.0.1:/path/file2 /path/file1

這樣就會用 myuser 這個帳號登入 192.168.0.1,將遠端主機上的 /path/file2 複製到 /path/file1

如果本地端的使用者帳號名稱剛好跟遠端的使用者帳號一樣,也可以將使用者帳號省略,例如:

# 從本地端複製到遠端
scp /path/file1 192.168.0.1:/path/file2

反過來也是類似:

# 從遠端複製到本地端
scp 192.168.0.1:/path/file2 /path/file1

複製目錄

若要複製整個目錄以及其下的所有檔案,則加上 -r 參數:

# 複製目錄
scp -r /path/folder1 myuser@192.168.0.1:/path/folder2

保留檔案時間與權限

若要讓檔案在複製之後,還可保留原本的修改時間、存取時間與權限,可以加上 -p 參數:

# 保留檔案時間與權限
scp -p /path/file1 myuser@192.168.0.1:/path/file2

資料壓縮

若要將資料壓縮之後再傳送,減少網路頻寬的使用量,可以加上 -C 參數:

# 資料壓縮
scp -C /path/file1 myuser@192.168.0.1:/path/file2

限制傳輸速度

若要限制網路的使用頻寬,可以用 -l 指定可用的網路頻寬上限值(單位為 Kbit/s):

# 限制傳輸速度為 400 Kbit/s
scp -l 400 /path/file1 myuser@192.168.0.1:/path/file2

這樣就會限制 scp 只能使用 400 Kbit/s,也就是 400 / 8 = 50 KB/s。

自訂連接埠

一般 SSH 伺服器的連接埠號為 22,如果遇到使用非標準埠號的伺服器,可以用 -P 來指定埠號。若遠端的 SSH 伺服器使用 2222 這個連接埠,我們就可以這樣複製檔案:

# 使用 2222 連接埠
scp -P 2222 /path/file1 myuser@192.168.0.1:/path/file2

IPv4 與 IPv6

-4 與 -6 兩個參數分別可以讓 scp 使用 IPv4 與 IPv6 來傳輸資料:

# 使用 IPv4
scp -4 /path/file1 myuser@192.168.0.1:/path/file2

# 使用 IPv6
scp -6 /path/file1 myuser@192.168.0.1:/path/file2

發表於 Linux系統 | 發表迴響