送孩子去義大燕巢分部,是大一新生住宿報到,真見識到父母沒放手,大部分開車來,在報到處領推車推行李,幾乎父母在推,孩子則跟著走,感覺像幼稚園的小朋友,每看到一胎化的彼岸,我們也不相上下‧
義大醫院,地點較偏僻,不在人多的都會區,可能不賺錢,但造福了附近的居民,順道去看叔婆老人家,九年不見,75歲糖尿病,坐輪椅,由外傭照顧著,假日沒人回去陪伴,看到我們夫婦及老三,眼眶泛紅,眼裡訴說著孤單,他由義大照護,鄉下的確需要這類醫院,願衛生局能感受到城鄉的需要與差別‧
我感觸很深,雖主日天沒望彌撒,但也做了有意義的探望老人‧
2012年9月10日 星期一
2012年9月7日 星期五
專題整合製作注意事項
專題要繳的事項
專題名稱
專題資料夾
database 例 x.sql , y.sql
基本操作手冊 -- help.doc
1.安裝程序
2.專案放置位址和資料庫匯入
3.專案首頁啟動方法和基本流程操作
安裝需要軟體和伺服器 wamp serve Tomcat server JRe1.6
系統架構圖 x.jpg
專題名稱
專題資料夾
database 例 x.sql , y.sql
基本操作手冊 -- help.doc
1.安裝程序
2.專案放置位址和資料庫匯入
3.專案首頁啟動方法和基本流程操作
安裝需要軟體和伺服器 wamp serve Tomcat server JRe1.6
系統架構圖 x.jpg
亂碼
這是雨宏的FB留言
今天遇到response.sendRedirect("goo ds.jsp?id="+strId+"&name="+str Name); 其中strName為中文字串, 結果對方接到的是一串亂碼... 我參數接有用String(request.getParame ter("name").getBytes("ISO-8859 -1"), "utf-8"), 怎麼想都想不透...
回家前經阿志提醒, 要加urlencoder, 果然現在修改後就正常了~~ ^O^
response.sendRedirect("goods.j sp?id="+strId+"&name="+URLEnco der.encode(name,"UTF-8"));
解釋
使用两次编碼的過程相當
输出为:
%E6%B5%8B%E8%AF%95
%25E6%25B5%258B%25E8%25AF%2595
%E6%B5%8B%E8%AF%95
测试
第一次编码后将汉字编码为%和字母数字的格式,而第二次编码的时候是对%字母数字进行编码,虽然解码的时候使用的是ISO-8859-1,但是对于%和字母数字而言用ISO-8859-1和UTF-8解码出来的是一样的,此时就回到了汉字被编码过一次的字符串了,当再次进行解码的时候使用UTF-8就回将它转会汉字。
今天遇到response.sendRedirect("goo
回家前經阿志提醒, 要加urlencoder, 果然現在修改後就正常了~~ ^O^
response.sendRedirect("goods.j
解釋
使用两次编碼的過程相當
String name=java.net.URLEncoder.encode("测试", "UTF-8"); System.out.println(name); name=java.net.URLEncoder.encode(name,"UTF-8"); System.out.println(name); name=java.net.URLDecoder.decode(name, "UTF-8"); System.out.println(name); System.out.println(java.net.URLDecoder.decode(name, "UTF-8"));
输出为:
%E6%B5%8B%E8%AF%95
%25E6%25B5%258B%25E8%25AF%2595
%E6%B5%8B%E8%AF%95
测试
第一次编码后将汉字编码为%和字母数字的格式,而第二次编码的时候是对%字母数字进行编码,虽然解码的时候使用的是ISO-8859-1,但是对于%和字母数字而言用ISO-8859-1和UTF-8解码出来的是一样的,此时就回到了汉字被编码过一次的字符串了,当再次进行解码的时候使用UTF-8就回将它转会汉字。
2012年9月6日 星期四
prev().attr('id') jquery example
為增加一列在sum row(#rs1) 之上 ,data row 之下,使用prev()找前一列的id 以便控制
。用id的編號做會員商品管理
var tr_id=$('#rs1').prev().attr('id');
alert(tr_id);
var i=0;
if (tr_id=="rh") //記得need ""
{
i=1;
alert("123");
}
else
{
i=tr_id.substring(2);
i++;
}
9/5進度記錄
。用id的編號做會員商品管理
var tr_id=$('#rs1').prev().attr('id');
alert(tr_id);
var i=0;
if (tr_id=="rh") //記得need ""
{
i=1;
alert("123");
}
else
{
i=tr_id.substring(2);
i++;
}
9/5進度記錄
$('#my_table > tbody > tr').eq(i-1).after(html);
以上為增加一列,eq()表示在第幾個tr
2012年9月4日 星期二
驗證
http://lzf0514.iteye.com/blog/724244
之前遍查不到validator的addMethod用法 官方的文件也不是說的很明白 由於我需要用正規化來做一些原本validator沒有的驗証規則
所以只能用addMethod的方法 大家可以參考下列的用法 用addMethod新增一個規則後 你可以自訂要針對這個規則所做出反應跟自訂錯誤訊息! 如果要套用這個規則,可以在html 元件中,加上class="自訂規則名" 即可套用了! 我研究的沒有很透徹啦..但可以用就好..
之前遍查不到validator的addMethod用法 官方的文件也不是說的很明白 由於我需要用正規化來做一些原本validator沒有的驗証規則
所以只能用addMethod的方法 大家可以參考下列的用法 用addMethod新增一個規則後 你可以自訂要針對這個規則所做出反應跟自訂錯誤訊息! 如果要套用這個規則,可以在html 元件中,加上class="自訂規則名" 即可套用了! 我研究的沒有很透徹啦..但可以用就好..
- < script type = " text/javascript " >
- $ ( document ) . ready ( function ( e ) {
- jQuery . validator . addMethod ( " test " , function ( value , element ) { //設增一個自訂規則test
- var result = this . optional ( element ) || value . length >= 5 && / d / . test ( value ) && / [a-zA-Z] /i . test ( value ) ;
- //用正規化表示式去設定validator所沒有的驗証規則
- if ( ! result ){
- element . value = "" ; //控制套用自訂規則的元件的程式碼可以在此設定
- }
- return result ;
- } , " 自訂錯誤訊息.<br> " ) ;
- }) ;
- < / script> <form> <input type="text" id="t1" class="test"> < / form >
- --------------------
- $(function ()
{
if (jQuery.validator)
{
//字母数字
jQuery.validator.addMethod("alnum", function (value, element)
{
return this.optional(element) || /^[a-zA-Z0-9]+$/.test(value);
}, "只能包括英文字母和数字");
// 手机号码验证
jQuery.validator.addMethod("cellphone", function (value, element)
{
var length = value.length;
return this.optional(element) || (length == 11 && /^(1\d{10})$/.test(value));
}, "请正确填写手机号码");
// 电话号码验证
jQuery.validator.addMethod("telephone", function (value, element)
{
var tel = /^(\d{3,4}-?)?\d{7,9}$/g;
return this.optional(element) || (tel.test(value));
}, "请正确填写电话号码");
// 邮政编码验证
jQuery.validator.addMethod("zipcode", function (value, element)
{
var tel = /^[0-9]{6}$/;
return this.optional(element) || (tel.test(value));
}, "请正确填写邮政编码");
// 汉字
jQuery.validator.addMethod("chcharacter", function (value, element)
{
var tel = /^[\u4e00-\u9fa5]+$/;
return this.optional(element) || (tel.test(value));
}, "请输入汉字");
// 汉字
jQuery.validator.addMethod("qq", function (value, element)
{
var tel = /^[1-9][0-9]{4,}$/;
return this.optional(element) || (tel.test(value));
}, "请输入正确的QQ");
// 用户名
jQuery.validator.addMethod("username", function (value, element)
{
return this.optional(element) || /^[a-zA-Z][a-zA-Z0-9_]+$/.test(value);
}, "用户名格式不正确");
}
});
jquery jsp y mysql 實作
相關設定
mysql ---使用wamp
tomcat---下載安裝
java--j2se jdk
jquery.js放網頁資料夾
mysql-connector-java-3.0.17-ga-bin.jar
mysql-connector-java-3.1.10-bin-g.jar
以上兩jar檔放入C:\Program Files\Apache Software Foundation\Tomcat 5.5\common\lib
//C:\Program Files\Apache Software Foundation\Tomcat 5.5\webapps\ROOT\WEB-INF
用javabean smart--把WEB-INF copy到網頁資料夾,新增classes資料夾放入com-jspsmart-upload-File.class+Files.class+Request.class+SmartUpload.class+SmartUploadException.class
//
資料連結設定檔querydata.jsp code 如下
<%@ page contentType="text/html; charset=utf-8" language="java" import="java.sql.*" errorPage="" %>
<%@page import="java.util.*"%>
<%!
public String[][] querydatafun(String databasename,String strsql)
{
ResultSet rs=null;
String[][] resultdata=null;
try
{
Class.forName("org.gjt.mm.mysql.Driver");
}
catch(Exception e)
{
//out.print("資料庫驅動程式失敗");
}
try
{
Connection myconn=DriverManager.getConnection("jdbc:mysql://localhost/"+databasename+"?useUnicode=true&characterEncoding=utf-8","root","");
Statement mysmt=myconn.createStatement();
rs=mysmt.executeQuery(strsql);
int fieldcount=rs.getMetaData().getColumnCount();
//out.print("總欄位數:"+fieldcount+"<p>");
for(int i=0;i<fieldcount;i++)
{
//out.print(rs.getMetaData().getColumnName(i+1)+"<p>");
}
rs.first();
rs.last();
int rowcount=rs.getRow();
//out.print("總記錄數:"+rowcount+"<p>");
if(rowcount==0)
{
resultdata=new String[0][0];
}
else
{
resultdata=new String[rowcount][fieldcount];
rs.beforeFirst();
int j=0;
while(rs.next())
{
for(int i=0;i<fieldcount;i++)
{
resultdata[j][i]=rs.getString(i+1);
}
j++;
}
rs.close();
myconn.close();
}
}
catch(SQLException er)
{
//out.print("資料庫管理系統無法啟動");
}
return resultdata;
}
%>
資料送入檔jtestdata.jsp code 如下
以上只做到按產品圖跑出table以便輸入定購數量
//http://www.9lessons.info/2008/09/jsp-login-page-to-connect-mysql-atabase.html
//http://ithelp.ithome.com.tw/question/10033993
mysql ---使用wamp
tomcat---下載安裝
java--j2se jdk
jquery.js放網頁資料夾
mysql-connector-java-3.0.17-ga-bin.jar
mysql-connector-java-3.1.10-bin-g.jar
以上兩jar檔放入C:\Program Files\Apache Software Foundation\Tomcat 5.5\common\lib
//C:\Program Files\Apache Software Foundation\Tomcat 5.5\webapps\ROOT\WEB-INF
用javabean smart--把WEB-INF copy到網頁資料夾,新增classes資料夾放入com-jspsmart-upload-File.class+Files.class+Request.class+SmartUpload.class+SmartUploadException.class
//
資料連結設定檔querydata.jsp code 如下
<%@ page contentType="text/html; charset=utf-8" language="java" import="java.sql.*" errorPage="" %>
<%@page import="java.util.*"%>
<%!
public String[][] querydatafun(String databasename,String strsql)
{
ResultSet rs=null;
String[][] resultdata=null;
try
{
Class.forName("org.gjt.mm.mysql.Driver");
}
catch(Exception e)
{
//out.print("資料庫驅動程式失敗");
}
try
{
Connection myconn=DriverManager.getConnection("jdbc:mysql://localhost/"+databasename+"?useUnicode=true&characterEncoding=utf-8","root","");
Statement mysmt=myconn.createStatement();
rs=mysmt.executeQuery(strsql);
int fieldcount=rs.getMetaData().getColumnCount();
//out.print("總欄位數:"+fieldcount+"<p>");
for(int i=0;i<fieldcount;i++)
{
//out.print(rs.getMetaData().getColumnName(i+1)+"<p>");
}
rs.first();
rs.last();
int rowcount=rs.getRow();
//out.print("總記錄數:"+rowcount+"<p>");
if(rowcount==0)
{
resultdata=new String[0][0];
}
else
{
resultdata=new String[rowcount][fieldcount];
rs.beforeFirst();
int j=0;
while(rs.next())
{
for(int i=0;i<fieldcount;i++)
{
resultdata[j][i]=rs.getString(i+1);
}
j++;
}
rs.close();
myconn.close();
}
}
catch(SQLException er)
{
//out.print("資料庫管理系統無法啟動");
}
return resultdata;
}
%>
資料送入檔jtestdata.jsp code 如下
<%@ page contentType="text/html; charset=utf-8" language="java" import="java.sql.*" errorPage="" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<%@include file="jtestdata.jsp"%>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>無標題文件</title>
</head>
<script type="text/javascript" src="./jquery.js"></script>
<script language="javascript" type="text/javascript" >
$(document).ready(function()
{
var htmlstr2=
var table=document.getElementById("tb1");
$("table img").mousedown(function()
{
var item_no=$(this).attr('id');//編號
var altstr=$(this).attr('alt');
var n=altstr.indexOf(",");
var storena=altstr.substring(0,n);//商家名
var itemstr=$(this).attr('title');
n=itemstr.indexOf(":");
var item_na=itemstr.substring(0,n);//商品名
var price=itemstr.substring(n+1,n+3);//單價
var htmlstr1='<table width="300" border="2"><tr><td width="180" >編號:'+item_no+'</td><td width="120" >商家:'+storena+'</td></tr><tr><td>商品:'+item_na+'</td><td>單價:'+price+'</td></tr><tr><td>數量:<input type="text" id="qty" size="8"/></td><td ><input type="button" id="bt1" value="確定" /></td></tr></table>';
$('#div1').html(htmlstr1);
});
});
</script>
<body>
<table id="tb1" width="100%" height="100%" border="1" align="center" cellspacing="1" >
<% for(int i=0;i<4;i++){ %>
<tr><% for(int j=1;j<6;j++){
int s=j+i*5; String mtr=Menu_item[s];
//out.print(mtr);
//out.print(s);
String k=store_no+"_"+s;%>
<td width="140" height="120" align="center" >
<a href="javascript:;">
<img id="<%=k%>" src="./pic/<%=k%>.jpg" width="100" height="60" title="<%=mtr%>元" border="1" alt="<%=store_na+","+k%>"/>
</a></td> <% } %>
</tr> <% } %>
</table>
<div id="div1">
</div>
<div id="div2">
<table id=""
</div>
</body>
</html>
以上只做到按產品圖跑出table以便輸入定購數量
//http://www.9lessons.info/2008/09/jsp-login-page-to-connect-mysql-atabase.html
//http://ithelp.ithome.com.tw/question/10033993
實作(1)
1.資料庫規化
databasename:lunch
table:
基本資料表
class_n: 班級 名稱
field:no,班級編號,班級名稱
store:商家名稱
field:no,商家名稱,商家編號,電話住址
menu:菜單
field:id,store,item,menu_no,price
menber:學員名冊
id,seat_no,name,gender,job,tel,email,address,interest1,interest2,remark,create_date,password
master:控管人員
ID,username,password,班級編號
交易變動檔
order:記錄檔
lo_id,class_seat_no,lo_store_no,lo_item_no,price,lo_qnt,lo_date,like,paid
以上須定欄位長度,型别,主key,編碼
like field to control menber's selected record
paid to contro paid or not
2.網頁架構
index----前台---瀏覽商品
定購商品 ---會員登入
--- 非會員
後台---會員管理
商家管理
商品管理
優會通告管理
客訴管理
databasename:lunch
table:
基本資料表
class_n: 班級 名稱
field:no,班級編號,班級名稱
store:商家名稱
field:no,商家名稱,商家編號,電話住址
menu:菜單
field:id,store,item,menu_no,price
menber:學員名冊
id,seat_no,name,gender,job,tel,email,address,interest1,interest2,remark,create_date,password
master:控管人員
ID,username,password,班級編號
交易變動檔
order:記錄檔
lo_id,class_seat_no,lo_store_no,lo_item_no,price,lo_qnt,lo_date,like,paid
以上須定欄位長度,型别,主key,編碼
like field to control menber's selected record
paid to contro paid or not
2.網頁架構
index----前台---瀏覽商品
定購商品 ---會員登入
--- 非會員
後台---會員管理
商家管理
商品管理
優會通告管理
客訴管理
規畫(1)
Td:id編號方式:tb2的t11-t15,t21-t25,t31-t35,t41-t45
.照片編號及品名編號:menu.(store_no+_+menu_no)
Title值:menu.(store_no+_+menu_no+”,”+menu.item+”,”menu.price+”元”)
Img.mousedown
1.下方跑出訂購單
2.填好數量,按確認後送到餐車
3.再送入交易檔
訂購單
編號:
|
品名編號
|
商家:
|
button.value
|
品名:
|
title
|
單價:
|
title
|
數量:
|
由客戶填
|
總價:
|
單價*數量
|
確認
|
|||
餐車
編號
|
商家
|
品名
|
單價
|
數量
|
總價
|
取消
|
送出訂單
|
||||||
data[i][j]
Td:id編號方式:tb2的t11-t15,t21-t25,t31-t35,t41-t45
table
id="tb2"
<td id="t11"
width="140" height="120" align="center" ><a
href="javascript:;"><img id="1001_1" src="pic/1001_1.jpg"
width="100" height="60" title="香雞排飯55元"
border="1" alt="品名編號1001_1"/></a></td>
2012年9月1日 星期六
挫折
讀書的時候要思考書籍內容的合理性與邏輯性.
透過「寫作」來整理觀念,目的就在於「強迫思考」,要能寫出有料的東西一定是經過深思熟慮的,自己思考、辯證過的東西一定比你光看書還能深刻記憶,過程即便辛苦,但內心感受踏實‧
這是我在尋找資料時,看到的一句話,曾幾何時,我讀書時已淪為流覽而不太思考‧被說程度不夠不要寫太大的程式‧心中很不服氣,難道因年紀大,記憶力減退,比別人花更多時間去探討,卻事半功倍,而無法實現想要完成的議題‧絕不放棄,即使成為結訓後的家庭作業,也要去克服‧
透過「寫作」來整理觀念,目的就在於「強迫思考」,要能寫出有料的東西一定是經過深思熟慮的,自己思考、辯證過的東西一定比你光看書還能深刻記憶,過程即便辛苦,但內心感受踏實‧
這是我在尋找資料時,看到的一句話,曾幾何時,我讀書時已淪為流覽而不太思考‧被說程度不夠不要寫太大的程式‧心中很不服氣,難道因年紀大,記憶力減退,比別人花更多時間去探討,卻事半功倍,而無法實現想要完成的議題‧絕不放棄,即使成為結訓後的家庭作業,也要去克服‧
訂閱:
意見 (Atom)