[AJAX]檢查帳號是否重複

網頁設計相關內容,如果您是網頁製作初學者,歡迎到此提問;<BR>如果您是網頁製作的高手,也可到此分享彼此的心得.

版主: E-Office小組

分享到: Facebook

[AJAX]檢查帳號是否重複

文章Paddy » 週四 9月 07, 2006 7:22 pm

以下為一個簡單的小程式,可以檢查帳號是否重複(可用在註冊新帳號時),
後端的程式是用asp.net,如果想換成php.jsp只要將ValiAccount.aspx這一頁
換成相對應的程式即可

附件是完整source code

JavaScript
代碼: 選擇全部
<script type="text/javascript">
      var xmlHttp;
      var proc;
      
      //程式由此執行
        function chkAccount() {
         proc = document.getElementById("imgproc");
         proc.style.visibility = 'visible';//顯示處理中的圖片
            createXMLHttpRequest();//建立XMLHttpRequest物件
            var myId = document.getElementById("txtAccount").value;
            var url = "ValiAccount.aspx?myId=" + myId;
           
            xmlHttp.onreadystatechange = callback; //資料回傳之後,使用callback這個函數處理後續動作
            xmlHttp.open("POST", url, true);//將輸入的帳號傳至後端作驗證
            xmlHttp.send(null);
        }
        //xmlHttp.open(a,b,c)
        //第一個參數是 HTTP request 的方法,也就是從 GET、POST、HEAD 中選一個使用,都要大寫
        //第二個參數是要呼叫的url,不過只能呼叫同一個網域的網頁
      //第三個參數決定此 request 是否不同步進行
      //如果設定為true則即使後端尚未傳回資料也會繼續執行後面的程式
      //如果設定為false則必須等後端傳回資料才會繼續執行後面的程式
      
      
   //此函式在建立XMLHttpRequest物件
        function createXMLHttpRequest() {
            if (window.ActiveXObject) {//IE
                xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
            }
            else if (window.XMLHttpRequest) {//other browser
                xmlHttp = new XMLHttpRequest();               
            }
        }

        function callback() {
            if (xmlHttp.readyState == 4) {
                if (xmlHttp.status == 200) {
               var xmldoc = xmlHttp.responseXML;//接收後端程式傳回來的xml
                    var mes = xmldoc.getElementsByTagName("message")[0].firstChild.data;//將Tag 為message的值抓出來
                    var val = xmldoc.getElementsByTagName("passed")[0].firstChild.data;//將Tag 為passed的值抓出來
                    setMessage(mes, val);
                }
            }
        }
        //xmlHttp.readyState 所有可能的值: 0 (還沒開始), 1 (讀取中), 2 (已讀取), 3 (資訊交換中), 4 (一切完成)
      //xmlHttp.status = 200 (一切正常), status = 404 (查無此頁), status =500 (內部錯誤)      
       
        function setMessage(message, isValid) {           
            var messageArea = document.getElementById("divAccount");
            var fontColor = "red";
 
            if (isValid == "true" || isValid == "True") {
                fontColor = "green";               
            }
            proc.style.visibility = 'hidden';//隱藏處理中的圖片
            messageArea.innerHTML = "<font color=" + fontColor + ">" + message + " </font>";//顯示是否有重複的帳號
        }
      </script>


觸發事件的input及顯示message的div及圖片
代碼: 選擇全部
         <input  id="txtAccount" onChange="chkAccount();"><IMG id="imgproc" style="VISIBILITY: hidden; CURSOR: wait" src="checking.gif">
            <div id="divAccount"></div>


後端處理程式
ValiAccount.aspx.cs
代碼: 選擇全部
      private void Page_Load(object sender, System.EventArgs e)
      {
         Response.ContentType="text/xml";
         Response.AddHeader("Cache-Control", "no-cache");
         Response.Write("<response>");

         
         bool uFlag=false;
         string message="";
         if(Request["myId"]!=null)
         {
            string myId=Request["myId"].ToString();
            if(myId=="paddy")
            {
               message="帳號無人使用";
               uFlag=true;
            }
            else
            {
               message="帳號重覆";
            }

         }
         else
         {
            message="參數錯誤";
         }
         Response.Write("<passed>" + uFlag.ToString() + "</passed>");
         Response.Write("<message>" + message + "</message>");
         Response.Write("</response>");
         Response.End();

      }


回傳的XML如下:
代碼: 選擇全部
 
<response>
   <passed>False</passed>
   <message>帳號重覆</message>
</response>


參考網頁
http://wiki.moztw.org/index.php/AJAX_%E ... B%E7%AF%87

小聲的問...有沒有人要幫忙寫一下php或是jsp的版本啊??
附加檔案
account.zip
AJAX檢查帳號是否重複
(4.48 KiB) 被下載 518 次
最後由 Paddy 於 週四 9月 07, 2006 7:24 pm 編輯,總共編輯了 1 次。
頭像
Paddy
總版主
 
文章: 891
註冊時間: 週一 3月 01, 2004 7:20 pm
來自: NewOrleans

Re:[AJAX]檢查帳號是否重複

文章copyleft » 週四 9月 07, 2006 7:24 pm

那本跟 paddy 學長一起買的 AJAX 的書,
我到現在一直還只看了前幾頁 Orz

看來專題要加 AJAX 遙遙無期..
頭像
copyleft
E-Office 小組
 
文章: 1006
註冊時間: 週六 8月 07, 2004 11:27 am
來自: Taiwan

Re:[AJAX]檢查帳號是否重複

文章Paddy » 週四 9月 07, 2006 7:44 pm

copyleft 寫:那本跟 paddy 學長一起買的 AJAX 的書,
我到現在一直還只看了前幾頁 Orz

看來專題要加 AJAX 遙遙無期..


copyleft你要不要幫忙寫一下上面的php版本啊?
javascript的地方都不用改道,只要改寫接收參數的那一頁就好了(ValiAccount.aspx)

下面幾本書都不錯
<a href="http://tlsj.tenlong.com.tw/WebModule/BookSearch/bookSearchViewAction.do?isbn=9575279034&sid=30383"><img width="150px" src="http://tlsj.tenlong.com.tw/WebModule/BookSearch/cover/20/9575279034.jpg"></a> <a href="http://tlsj.tenlong.com.tw/WebModule/BookSearch/bookSearchViewAction.do?isbn=9861810196&sid=31212"><img width="150px" src="http://tlsj.tenlong.com.tw/WebModule/BookSearch/cover/02/9861810196.jpg"></a> <a href="http://tlsj.tenlong.com.tw/WebModule/BookSearch/bookSearchViewAction.do?isbn=9789861810362&sid=31801"><img width="150px" src="http://tlsj.tenlong.com.tw/WebModule/BookSearch/cover/02/9789861810362.jpg"></a> <a href="http://tlsj.tenlong.com.tw/WebModule/BookSearch/bookSearchViewAction.do?isbn=9575279395&sid=32056"><img width="150px" src="http://tlsj.tenlong.com.tw/WebModule/BookSearch/cover/20/9575279395.jpg"></a>

左邊三本我有,
最新 JavaScript 與 Ajax 範例活用辭典 :小小一本,潛顯易懂,基本上幾乎都在介紹JavaScript,很多JavaScript常用的sample
Ajax 技術手冊:基本的ajax概念跟架構都有介紹到了。
Ajax 實戰手冊 (Ajax in Action) :較艱深,文字也較多,不過介紹的很詳細。
Ajax 範例活用辭典:與第一本是姐妹書,是一本幾乎全部都是範例,還有拿google,yahoo,Amazon的sample來run.
頭像
Paddy
總版主
 
文章: 891
註冊時間: 週一 3月 01, 2004 7:20 pm
來自: NewOrleans

Re:[AJAX]檢查帳號是否重複

文章XO » 週五 9月 08, 2006 1:57 am

其實可以考慮玩玩這個 ZK - Ajax but no JavaScript


圖檔
eXtra Old 的是我「不是酒」哦!
제 이름은 오조휘 입니다

臉書裡依舊是 Extra.Old: http://www.facebook.com/extra.old
頭像
XO
資管系教師
 
文章: 5307
註冊時間: 週二 4月 27, 2004 12:20 pm
來自: CQ Inc.

Re:[AJAX]檢查帳號是否重複

文章XO » 週四 4月 24, 2008 9:04 pm

趕巧最近跟 Web 程式設計班的學生,在探討 AJAX .... 把這一篇稍微整理一下:

chkAccount.js (把 Javascript 程式碼抽離出來成為一個獨立檔)
_____

代碼: 選擇全部
var xmlHttp;
var proc;
 
// 此函式在建立 XMLHttpRequest 物件
function createXMLHttpRequest() {
  if (window.ActiveXObject) { // IE
    xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
  }
  else if (window.XMLHttpRequest) { // Other browser
    xmlHttp = new XMLHttpRequest();               
  }
}

// 程式由此執行 (<input> tag 裡設定 onkeyup="chkAccount()")
function chkAccount() {
  // 顯示處理中的圖片
  proc = document.getElementById("[color=blue][b]imgproc[/b][/color]");
  proc.style.visibility = 'visible';

  // 建立XMLHttpRequest物件
  createXMLHttpRequest();
  var myId = document.getElementById("[color=blue][b]txtAccount[/b][/color]").value;
  var url = "ValiAccount.jsp?myId=" + myId;

  // 將輸入的帳號傳至後端作驗證
  xmlHttp.onreadystatechange = callback; 
  xmlHttp.open("GET", url, true);
  xmlHttp.send(null);
}
 
/* XMLHttpRequest 物件 open 方法的參數說明: 
   xmlHttp.open(a,b,c)
   第一個參數 a 是 HTTP request 的方法:GET、POST、HEAD 中選一個使用(全大寫)
   第二個參數 b 是要呼叫的 url, 不過只能呼叫與本網頁同一個網域內的網頁
   第三個參數 c 決定此 request 是否採非同步進行
     如果設定為 true 則即使後端尚未傳回資料也會繼續往下執行後面的程式
     如果設定為 false 則必須等後端傳回資料後,才會繼續執行後面的程式
 */     

// 資料回傳之後,使用 callback 這個函數處理後續動作   
function callback() {
  if ((xmlHttp.readyState == 4) && (xmlHttp.status == 200)) {
    // 接收後端程式傳回來的網頁(解析成 DOM 格式)
    var xmldoc = xmlHttp.responseXML;
    // 取出 Tag 為 <message> 該元素的值
    var mes = xmldoc.getElementsByTagName("[color=blue][b]message[/b][/color]")[0].firstChild.data;
    // 取出 Tag 為 <passed> 該元素的值
    var val = xmldoc.getElementsByTagName("[color=blue][b]passed[/b][/color]")[0].firstChild.data;
    setMessage(mes, val);
  }
}

/* xmlHttp.readyState 所有可能的值:
     0 (還沒開始),
     1 (讀取中),
     2 (已讀取),
     3 (資訊交換中),
     4 (一切完成)

   xmlHttp.status 常見的值:
     200 (一切正常),
     404 (查無此頁),
     500 (內部錯誤)   
*/     
 
function setMessage(message, isValid) {           
  var messageArea = document.getElementById("[color=blue][b]divAccount[/b][/color]");
  var fontColor = "red";

  if (isValid == "true" || isValid == "True") {
    fontColor = "green";               
  }

  // 隱藏處理中的圖片
  proc.style.visibility = 'hidden';
  // 顯示是否有重複的帳號
  messageArea.innerHTML = "<font color=" + fontColor + ">" + message + " </font>";
}


chkAccount.html (讓這 HTML 網頁來「嵌入」上述 Javascript 腳本)
_____

代碼: 選擇全部
<html>
<head>
  <title>Check Account via AJAX</title>
  <script type="text/javascript" src="[color=red][b]chkAccount.js[/b][/color]"></script>
</head>

<body>
<form>
  <img [b]id="[color=blue]imgproc[/color]"[/b]
       style="VISIBILITY: hidden; CURSOR: wait"
       src="checking.gif"> <br>
  <div [b]id="[color=blue]divAccount[/color]"[/b]>Applying an account...</div>
  <input [b]id="[color=blue]txtAccount[/color]"[/b]
         type="text"
         size="30"
         [color=red][b]onkeyup="chkAccount()[/b][/color]">
  <input type="submit">
</form>
</body>
</html>



ValiAccount.jsp (作為 Server 端 JSP 伺候/應付 AJAX 的登門造訪唄)
_____

代碼: 選擇全部
<%@ page contentType="text/xml; charset=Big5" %>
<%
  String myId = request.getParameter("myId");
  boolean passed;
  String message;

  try {
    if(myId.equals("")) {
      passed = false;
      message = "你到底要不要個帳號嘛?";
    } else if(myId.equals("paddy")) {
      passed = false;
      message = "account in use";
    } else {
      passed = true;
      message = "account OK";
    }
    response.addHeader("Cache-Control", "no-cache");
  } catch(Exception e) {
    passed = false;
    message=e.getMessage(); 
  }
%>
<response>
  <[color=blue][b]passed[/b][/color]><%=(passed?"true":"false") %></passed>
  <[color=blue][b]message[/b][/color]><%=message %></message>
</response>


然後啊! Paddy 那個 checking.gif 圖不見了,我就讓 Java Duke 先生拿「放大鏡」來檢視... 幫我們 check 囉!

checking.gif
_____

圖檔

讓她 Duke 老人家沒事「現身」拿那放大鏡,幫我們 Duke Look Luke .... ㄇㄟ ;) (輕鬆一下!祝考試順利!)

來!到此一遊嚐嚐 AJAX 餐吧! http://erplab-92.im.fju.edu.tw:8181/chkAccount.html (Tomcat 之下的)

忠於原創,這裡面只有 paddy 這個 account in use ....

Resin 底下 http://erplab-92.im.fju.edu.tw:8080/chkAccount.html 碼喜也塞! ;)

Oh, BTW, Paddy 原先用的 onChange 事件我改成 onkeyup 比較能突顯 Ajax 非同步的效益。
附加檔案
chkAccount.rar
Check Account via AJAX (HTML Form + JavaScript + JSP)
(16.62 KiB) 被下載 316 次
最後由 XO 於 週六 5月 31, 2008 1:01 pm 編輯,總共編輯了 13 次。
eXtra Old 的是我「不是酒」哦!
제 이름은 오조휘 입니다

臉書裡依舊是 Extra.Old: http://www.facebook.com/extra.old
頭像
XO
資管系教師
 
文章: 5307
註冊時間: 週二 4月 27, 2004 12:20 pm
來自: CQ Inc.

Re:[AJAX]檢查帳號是否重複

文章XO » 週四 4月 24, 2008 9:54 pm

看個 XO 製片廠拍的紀錄片吧!........

http://erplab-92.im.fju.edu.tw:8181/AjaxDemo.htm
eXtra Old 的是我「不是酒」哦!
제 이름은 오조휘 입니다

臉書裡依舊是 Extra.Old: http://www.facebook.com/extra.old
頭像
XO
資管系教師
 
文章: 5307
註冊時間: 週二 4月 27, 2004 12:20 pm
來自: CQ Inc.

Re:[AJAX]檢查帳號是否重複

文章XO » 週六 4月 26, 2008 2:04 am

XO 寫:其實可以考慮玩玩這個 ZK - Ajax but no JavaScript


圖檔


回頭再來看這個 ZK ... 挺有趣的,它採用 XUL 改良版 ZUL 來做 View 視覺部分,用 Java code 來實作 Controller 部分,View 與
Controller 切割得挺清爽的.... 也不知道是真是假?我剛剛用 GoogleFight 讓 ZK 與諸多其他 AJAX 方案去「比武/決鬥」,居然勝出
拔得頭籌耶! 其餘依次為:
我裝了個 Demo 到 erplab-92 這台機器上,要試的人可以瀏覽:

http://erplab-92.im.fju.edu.tw:8181/zkdemo/userguide

幾篇文章可以看一看:

挑明的是要與 Echo2 打對台的。
eXtra Old 的是我「不是酒」哦!
제 이름은 오조휘 입니다

臉書裡依舊是 Extra.Old: http://www.facebook.com/extra.old
頭像
XO
資管系教師
 
文章: 5307
註冊時間: 週二 4月 27, 2004 12:20 pm
來自: CQ Inc.

Re:[AJAX]檢查帳號是否重複

文章XO » 週六 4月 26, 2008 1:49 pm

XO 寫:看個 XO 製片廠拍的紀錄片吧!........

http://erplab-92.im.fju.edu.tw:8181/AjaxDemo.htm


忘了提說影片下方那個 Firefox 的 Firebug plugin 記得一定要下載來玩...
對 Web 程式設計的 Debug 非常有幫助.... You wouldn't want to leave home (for work ㄇㄟ) without it.

前此一位 IBM 服務的學長推薦的 HttpWatch (要 Co Co 的) 也不錯!
http://www.cnblogs.com/JeffreyZhao/arch ... 15964.html 學學他... 好好寫些 HttpWatch 的文章,說不定「天上也會掉下來個禮物」! ;)

有沒誰知道 IE 下有類似 Plugin 給「窮人家」像我這樣的人用的?

我被騙到這裡: IE Developer Toolbar - Firebug for Internet Explorer 可能是太弩鈍了吧!?弄不出個名堂來! :cry:
最後由 XO 於 週六 4月 26, 2008 11:00 pm 編輯,總共編輯了 1 次。
eXtra Old 的是我「不是酒」哦!
제 이름은 오조휘 입니다

臉書裡依舊是 Extra.Old: http://www.facebook.com/extra.old
頭像
XO
資管系教師
 
文章: 5307
註冊時間: 週二 4月 27, 2004 12:20 pm
來自: CQ Inc.

Re:[AJAX]檢查帳號是否重複

文章b80203 » 週六 4月 26, 2008 9:46 pm

XO 寫:前此一位 IBM 服務的學長推薦的 HttpWatch (要 Co Co 的) 也不錯!
http://eoffice.im.fju.edu.tw/phpbb/post ... st&p=19953 學學他... 好好寫些 HttpWatch 的文章,說不定「天上也會掉下來個禮物」! ;)


老師下面的那個連結有點問題,似乎是老師在編輯的時候的網址嗎??
當我連結時,它會表示沒有權限編輯此網頁!!
b80203
資管系課程助教
 
文章: 189
註冊時間: 週日 10月 01, 2006 7:33 pm
來自: fju im & pe

Re:[AJAX]檢查帳號是否重複

文章Paddy » 週六 4月 26, 2008 10:41 pm

XO 寫:

有沒誰知道 IE 下有類似 Plugin 給「窮人家」像我這樣的人用的?

我被騙到這裡: IE Developer Toolbar - Firebug for Internet Explorer 可能是太弩鈍了吧!?弄不出個名堂來! :cry:


上面的Link是去Internet Explorer Developer Toolbar安裝。

裝好上面那個,之後
在IE的檢視-->瀏覽器列-->IE Developer Toolbar 打勾,
就會看到類似Firebug 的介面囉。
頭像
Paddy
總版主
 
文章: 891
註冊時間: 週一 3月 01, 2004 7:20 pm
來自: NewOrleans

Re:[AJAX]檢查帳號是否重複

文章XO » 週六 4月 26, 2008 11:01 pm

b80203 寫:
XO 寫:前此一位 IBM 服務的學長推薦的 HttpWatch (要 Co Co 的) 也不錯!
http://www.cnblogs.com/JeffreyZhao/arch ... 15964.html 學學他... 好好寫些 HttpWatch 的文章,說不定「天上也會掉下來個禮物」! ;)


老師下面的那個連結有點問題,似乎是老師在編輯的時候的網址嗎??
當我連結時,它會表示沒有權限編輯此網頁!!


更正好了! Thanks.
eXtra Old 的是我「不是酒」哦!
제 이름은 오조휘 입니다

臉書裡依舊是 Extra.Old: http://www.facebook.com/extra.old
頭像
XO
資管系教師
 
文章: 5307
註冊時間: 週二 4月 27, 2004 12:20 pm
來自: CQ Inc.

Re:[AJAX]檢查帳號是否重複

文章XO » 週六 4月 26, 2008 11:10 pm

Paddy 寫:
XO 寫:

有沒誰知道 IE 下有類似 Plugin 給「窮人家」像我這樣的人用的?

我被騙到這裡: IE Developer Toolbar - Firebug for Internet Explorer 可能是太弩鈍了吧!?弄不出個名堂來! :cry:


上面的Link是去Internet Explorer Developer Toolbar安裝。

裝好上面那個,之後
在IE的檢視-->瀏覽器列-->IE Developer Toolbar 打勾,
就會看到類似Firebug 的介面囉。


耶~~~ 找到了!就在我那 Demo 版 HttpWatch 旁邊,看走眼了! 那天裝完找得我眼睛都脫窗啦!
<sigh> 我這機器亂七八糟的裝了好機脫拉庫的東東,每個看到我桌面的都說頭暈哪!

圖檔
eXtra Old 的是我「不是酒」哦!
제 이름은 오조휘 입니다

臉書裡依舊是 Extra.Old: http://www.facebook.com/extra.old
頭像
XO
資管系教師
 
文章: 5307
註冊時間: 週二 4月 27, 2004 12:20 pm
來自: CQ Inc.

Re:[AJAX]檢查帳號是否重複

文章h0075200 » 週三 4月 30, 2008 6:49 pm

我寫了一個php版本的: accountCheck.php
可以到這邊來玩玩:http://140.136.152.123/AJAX/accountCheck.html
代碼: 選擇全部
<?php
        header("Content-type: text/xml");
        header(" Cache-Control: no-cache");
      
      echo '<?xml version="1.0" encoding="big5"?>';
      echo "<response>";
     
         $uFlag=0;
         $message="";
       $myId=$[color=red]_GET[[/color]"myId"];   //php中用來取得表單參數的方法
      
         if ($myId!=NULL)
         {
           
            if($myId=="paddy")
            {
               $message="帳號已被使用";
               $uFlag=0;
            }
            else
            {
               $message="ok的帳號";
            $uFlag=1;
            }

         }
         else
         {
            $message="你到底要不要帳號嘛?";
         }
      
      
       echo '<passed>'.$uFlag.'</passed>';
      
       echo '<message>'.$message.'</message>';

      
        echo "</response>";
         
?>


其他檔案則是沿用老師寫的chkAccount.html、chkAccount.js(裡面唯有把post 改成get)

在寫的時候遇到了這個問題:
老師在傳遞參數給伺服器端的時候是用POST方法
我當下在寫的時候不宜有它 直接照抄...
結果.... 出現了抓不到xml tag value的 bug
搞了一下午~~上網求救,找到了一篇文章:http://web.nchu.edu.tw/~jlu/classes/xml/ajax/ajax.shtml
裡面提及若是使用post方法還必需要
setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
send('name=value&anothername=othervalue&so=on');

當時我就在猜是不是這個問題,於是我把我自己寫的改成用get,就成功了 T T
但是我照著上面的說法作卻還是失敗...
我看老師的程式碼也沒有加上這兩個statement
但卻可以跑?
Life is for something rather than die for nothing
頭像
h0075200
懷疑的國中生
 
文章: 52
註冊時間: 週一 10月 23, 2006 1:19 pm
來自: 圖資系

Re:[AJAX]檢查帳號是否重複

文章XO » 週三 4月 30, 2008 8:38 pm

佩服呀!你這雙主修「圖資」與「資管」時間就夠吃緊了.... 觸角還這麼廣泛?
厲害!想說:「好像看到了當年的我...」後來覺得...「不對!我在學校期間,也沒你這麼認真過!」

是就業後,才開始「瘋狂」地過這種「沒有星星沒有月亮的日子」.... 直到現在 30 多年來如一日!
要學的東西實在太多啦!也還算「勁在工作」...

最近看到幾個好玩的,除了 curl / processing 之外就是這: 「綠腳計畫」 Greenfoot 源自 BlueJ 同一群教授...

看看這一個 9 歲小女孩兒在爸爸旁敲側擊輔助下 用 Java 寫的http://www.greenfoot.org/live/DrWho/DrWho.html
按下 Run 之後,運用上下左右鍵.....

再來看這一段她爹記錄下來小娃兒學習過程原委: Teaching My Daughter To Code (2008/1/20)

有閒也有興趣的話,再來部影片: Greenfoot Overview Quicktime Movie (壓縮檔還蠻大的 25.5MB,所以要有耐心啦!不過絕對值得一看!
看了之後,再苦你也會想學好 Java 的啦!其實也沒那麼難!ㄟ!總不好讓人家 9 歲小娃兒笑我們.....)

_____

我讓 Eclipse 與 NetBeans 上 Googlefight.com 擂台上去比武,結果是:

圖檔

但是 ....
如果拿 Latest Eclipse 3.4 與 NetBeans 6.1 來比武,那 ....

圖檔


(呵呵~~~ 我猜一定有人會為 JCreator 來踢館.... ;) )

我倒是有個看法,若是未來學 Java 改採 NetBeans IDE 5.5.1 BlueJ Edition 應該是不錯的的選項唷!
一兼二顧,摸蛤蠣兼洗褲子... 先從學術一點兒的 BlueJ 入門,再慢慢過渡帶入到商業用途的 NetBeans ....

我想 NetBeans IDE 6.1 BlueJ Edition 應該也不遠了吧!「雙燕銜書舞,指日一起來」...
Speaking of the book.......

David J. Barnes & Michael Kölling
Objects First with Java
A Practical Introduction using BlueJ, 3rd ed

這一本還真不錯耶!
最後由 XO 於 週三 8月 18, 2010 7:51 pm 編輯,總共編輯了 4 次。
eXtra Old 的是我「不是酒」哦!
제 이름은 오조휘 입니다

臉書裡依舊是 Extra.Old: http://www.facebook.com/extra.old
頭像
XO
資管系教師
 
文章: 5307
註冊時間: 週二 4月 27, 2004 12:20 pm
來自: CQ Inc.

Re:[AJAX]檢查帳號是否重複

文章Itemx » 週日 5月 04, 2008 8:40 pm

h0075200 寫:我寫了一個php版本的:


根據我的php使用習慣改一下, 順便說明理由...

代碼: 選擇全部
<?php
        header("Content-type: text/xml");
        header(" Cache-Control: no-cache");
      
      echo '<?xml version="1.0" encoding="big5"?>';
      echo "<response>";
     
         $uFlag=0;
         $message="";
         if(isset(_POST["myId"])) { // 節省資源的作法, 沒輸入直接不檢查, 省略剩下的if判斷(因為一定是非正常操作)
                 $myId=$[color=red]_POST[[/color]"myId"];   //php 限定只有表單用"POST"方式的時候才承認, 減少URL洩漏資料的可能性
                 if ($myId!=NULL){
                   if($myId=="paddy")
                    {
                       $message="帳號已被使用";
                       // $uFlag=0; // 沒有改變uFlag的狀況直接就省略
                    }
                    else
                    {
                       $message="ok的帳號";
                    $uFlag=1;
                    }
                 }
                 else
                 {
                    $message="你到底要不要帳號嘛?";
                 }
        } else {
                $message="Non-regular input.";
        }
      
      
       echo '<passed>'.$uFlag.'</passed>';
      
       echo '<message>'.$message.'</message>';

      
        echo "</response>";
         
?>


然後, POST不能用的原因是AJAX那邊得指定吧...

http_request.open('POST', 'taichung.xml', true);
http_request.send('myID=Some String'); // 這邊Some Data請改讓JS去抓form data
Connecting .................. [ OK ]
User Identify .................. [ Itemx ]
Also Locate a blog: [FLAK #0 Active Log]
頭像
Itemx
站長群
 
文章: 660
註冊時間: 週四 3月 25, 2004 1:06 am
來自: FLAK第三憐合回線

Re:[AJAX]檢查帳號是否重複

文章qaz0601 » 週四 5月 29, 2008 1:58 pm

不好意思
請問可以補一下附加檔的連結嗎?
因為最近有做到這個地方,想參考一下

另外,請問要連結資料庫的地方是不是要寫在URL?
如果是連結到access資料庫中的其中ㄧ欄資料,該怎麼寫呢?
我是用ASP.NET做的
感謝大家^^
qaz0601
剛學走路的小朋友
 
文章: 1
註冊時間: 週四 5月 29, 2008 1:35 pm

Re:[AJAX]檢查帳號是否重複

文章XO » 週六 5月 31, 2008 1:04 pm

qaz0601 寫:不好意思
請問可以補一下附加檔的連結嗎?
因為最近有做到這個地方,想參考一下


我的部份夾檔放上去囉!(在原PO文處夾檔)
  • HTML Form -- chkAccount.html
  • Javascript -- chkAccount.js
  • JSP -- ValiAccount.jsp
  • Duke Image -- checking.gif
eXtra Old 的是我「不是酒」哦!
제 이름은 오조휘 입니다

臉書裡依舊是 Extra.Old: http://www.facebook.com/extra.old
頭像
XO
資管系教師
 
文章: 5307
註冊時間: 週二 4月 27, 2004 12:20 pm
來自: CQ Inc.


回到 網頁設計討論版

誰在線上

正在瀏覽這個版面的使用者:沒有註冊會員 和 1 位訪客