JavaScript

You are currently browsing the articles from KomKid.Net matching the category JavaScript.

Export/Import Google Chrome Extensions

เคยมั้ยที่ มีเหตุจำเป็นต้องเปลี่ยน User หรือปัญหาอื่น ๆ ที่ทำให้ต้องใช้งาน Chrome ใหม่ แต่ไม่มี Extension ที่ถูกใจตามมาด้วย
ปัญหานี้แก้ไขได้ด้วยการ Export แล้วนำมา Import ใหม่ดังนี้
1. Extensions ของ Google Chrome จะเก็บอยู่ที่ /home/user/.config/google-chrome/Default/Extensions สำหรับ Ubuntu และ C:\Documents and Settings\UserName\Local Settings\Application Data\Google\Chrome\User Data\Default สำหรับ Windows
แต่จะเห็นว่ามันไม่ได้เก็บเป็นชื่อ Extensions แต่เป็นรหัสอะไรซักอย่าง

2.ใช้คำสั่งเพื่อดูรายละเอียดของ Extensions ดังนี้
2.1 เปิดหน้า Extensions ขึ้นมา chrome://extensions/
2.2 กดปุ่ม shift+ctrl+j
2.3 ป้อน code ดังนี้

1
returnExtensionsData=function(a){var o=[];for(var i=0,e=a.extensions,len=a.extensions.length;i<len;i++){o.push({id:e[i].id,name:e[i].name});}console.log('var extdata='+JSON.stringify(o)+';');};requestExtensionsData();

2.4 จะได้ผลลัพธ์ประมาณนี้

1
2
3
4
var extdata=[
{"id":"dabddpakolmhhlcblnooeacilidlbblh","name":"Publish sync for google+ & facebook"},
{"id":"lnlgojabfogikedjanecphloghlegpdm","name":"Phone 2 Google Chrome™"},
{"id":"oadboiipflhobonjjffjbfekfjcgkhco","name":"Google Chrome to Phone Extension"}];

3.จากขั้นตอนที่ผ่านมาจะเห็นว่า id จะตรงกับชื่อ folder ที่นี้ก็ดูตรง name ซึ่งเป็นชื่อ Extension ก็ไป copy folder นั้นมา แล้วก็คลิกตรง “Load unpacked extension… แล้ว browse ไป folder ที่เรา copy มา ก็เป็นอันเสร็จเรียบร้อย

ที่มา : http://superuser.com/questions/154770/how-to-export-extensions-of-google-chrome

Written by Komkid on January 23rd, 2012 with no comments.
Read more articles on IT Tips and JavaScript and Software.

Set homepage by code

วันก่อนมีรุ่นน้องที่เคารพ โทรมาหาถามว่า

พี่ เซ็ต homepage ทำยังไงอ่ะ พอดีไปเผลอกดตอบรับเซ็ต homepage ของเว็บนึงเข้า

คิดในใจ “โห โง่ว่ะ” แต่ตอบไปว่า

เข้าไปที่ Tools -> Internet option …

สวนกลับมาก่อนจะบอกจบว่า

ไม่ได้พี่ IT บล็อก

ค่อยเริ่มน่าสนใจหน่อย จะบอกให้ไปแก้จาก registry ก็คงจะโดนบล็อกอีก ก็เลยหาวิธีอื่นให้ สรุปได้ว่าใช้ code ข้างล่าง

1
2
3
4
5
6
7
8
9
10
11
12
<html>
<head>
<title>Set homepage</title>
</head>
<body>
<form name="HomepageForm">
<input type="text" name="urlbox">
<input type="button" onclick="this.style.behavior='url(#default#homepage)';this.setHomePage(document.HomepageForm.urlbox.value);" value="Set">
</form>

</body>
</html>

upload ให้ด้วยที่ http://tools.komkid.net/homepage.html เผื่อใครจะเจอสถานการณ์แบบนี้บ้าง (ใช้ได้เฉพาะ IE เท่านั้นเด้อ)

——————————————
อันนี้แปะไว้กันลืม Registry สำหรับ IE

1
HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main\Start Page

Written by Komkid on April 27th, 2010 with no comments.
Read more articles on Internet and JavaScript and Programming.

JavaScript : 1 Form 2 Target

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
        <script type="text/javascript">
         <!--
         function submitView()
         {
           myform = document.form1;
           myform.target="_blank";
           myform.action="view.php";
           myform.submit();
           return false;
         }
         
        function submitEdit()
         {
           myform = document.form1;
           myform.target="_blank";
           myform.action="edit.php";
           myform.submit();
           return false;
         }
 
         //-->
         </script>
1
2
3
4
<form name="form1" method="post">
<input type="submit" name="SubmitV" value="- View -" onclick="submitView();">
<input type="submit" name="SubmitE" value="- Edit -" onclick="submitEdit();">
</form>

Written by Komkid on January 27th, 2010 with no comments.
Read more articles on JavaScript and Programming.

JavaScript : AJAX for Province, Amphur, Tumbol

เริ่มจาก ได้ฐานข้อมูล จังหวัด -> อำเภอ -> ตำบล ที่ดีมาก มาจากไหน ตั้งแต่เมื่อไหร่ ไม่รู้ แต่พอจะใช้ขึ้นมา เพิ่งพบว่า ที่ได้มานั้นมันดีจริง ๆ ดียังไง ให้เปิด ตรวจสอบหมายเลขบัตรประจำตัวประชาชน ประกอบครับ (ที่จริงต้องเปิด http://th.wikipedia.org/wiki/เลขประจำตัวประชาชนไทย ด้วย)

มาดูฐานข้อมูลกันก่อน
1.จังหวัด
ตารางเป็นแบบนี้
db_province
ข้อมูลเป็นแบบนี้
data_province
สังเกตดูนะครับ id มันคือ หลักที่ 2+3 ของเลขบัตรประจำตัวประชาชน

2.อำเภอ
ตารางเป็นแบบนี้
db_amphur
ข้อมูลเป็นแบบนี้
data_amphur
id ของตารางนี้ ก็คือ หลักที่ 4+5 ของเลขบัตรประจำตัวประชาชน

3.ตำบล
ตารางเป็นแบบนี้
db_tumbol
ข้อมูลเป็นแบบนี้
data_tumbol
อันนี้ หลักที่ 6-10 ค่อนข้างกว้าง จึงระบุไม่ได้ แต่ได้ 2 อันแรกก็ดูดีแล้วน่ะ

AJAX กับ PHP ก็ต้องเริ่มจาก
1.เตรียมการสำหรับ form

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
    $ProvinceSelect.="<select name='ProvinceId'  onClick='javascript:getAmphur(this.value);'>";
    $SQL="SELECT id,name FROM sci._province ORDER BY id";
    $NumRows=$myDB->Query($SQL);
    while($row=$myDB->GetRow()){
         $ProvinceSelect.="<option value='".$row["id"]."'> ".$row["name"]."</option>";
    }
    $ProvinceSelect.="</select></div>";

    $AmphurSelect="<div id='AmphurList'>";
    $AmphurSelect.="<select name='AmphurId' >";
    $SQL="SELECT id,name FROM sci._amphur WHERE id='".$AmphurId."' AND province='".$ProvinceId."'";
    $NumRows=$myDB->Query($SQL);
    while($row=$myDB->GetRow()){
        $AmphurSelect.="<option value='".$row["id"]."'> ".$row["name"]."</option>";
    }
    $AmphurSelect.="</select></div>";

    $TumbolSelect="<div id='TumbolList'>";
    $TumbolSelect.="<select name='TumbolId' >";
    $SQL="SELECT id,name FROM sci._tumbol WHERE id='".$TumbolId."' AND amphur='".$AmphurId."' AND province='".$ProvinceId."'";
    $NumRows=$myDB->Query($SQL);
    while($row=$myDB->GetRow()){
        $TumbolSelect.="<option value='".$row["id"]."'> ".$row["name"]."</option>";
    }
    $TumbolSelect.="</select></div>";

$myDB->Query($SQL);
อันนี้คือ class ที่ผมทำเอาไว้แล้ว สำหรับการ query ส่วนใครจะ query ยังไงก็แล้วแต่สะดวก
ประเด็นก็คือ เลือกจังหวัดมายัดใส่ Combo box รอไว้ พอเลือกจังหวัดเสร็จก็เรียก JavaScript ให้ทำงาน ส่วนอันอื่นเป็น div ว่าง ๆ ไว้ก่อน

2.JavaScript

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
function newXmlHttp(){
    var xmlhttp = false;
        var contentType = "application/x-www-form-urlencoded; charset=utf-8";
    try{
        xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
    }catch(e){
        try{
            xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
        }catch(e){
            xmlhttp = false;
        }
    }

    if(!xmlhttp && document.createElement){
        xmlhttp = new XMLHttpRequest();
    }
    return xmlhttp;
}

function getAmphur(p){
    pagefile="amphur_list.php?P="+p;
    var getcontent;
    getcontent       =newXmlHttp();
        getcontent.open('GET', pagefile, true);
    getcontent.onreadystatechange = function(){
        if (getcontent.readyState == 4 && getcontent.status == 200) {
            document.getElementById('AmphurList').innerHTML = getcontent.responseText;
        }
    }
    getcontent.send(null);
}

function getTumbol(p,a){
    pagefile="tumbol_list.php?P="+p+"&A="+a;
    var getcontent;
    getcontent       =newXmlHttp();
        getcontent.open('GET', pagefile, true);
    getcontent.onreadystatechange = function(){
        if (getcontent.readyState == 4 && getcontent.status == 200) {
            document.getElementById('TumbolList').innerHTML = getcontent.responseText;
        }
    }
    getcontent.send(null);
}

หลักการก็คือ
พอเลือกจังหวัดก็เรียก JavaScript ชื่อ getAmphur ซึ่งจะไปเรียกไฟล์ PHP amphur_list.php ซึ่งมีหน้าที่ไปดึงรายการอำเภอของจังหวัด จากฐานข้อมูลมา แล้ว getAmphur ก็ยัดข้อมูลลงไปใน div ว่าง ๆ ที่ชื่อ AmphurList ของ form ที่เตรียมไว้

พอเลือกอำเภอก็เรียก JavaScript ชื่อ getTumbol ซึ่งจะไปเรียกไฟล์ PHP tumbol_list.php ซึ่งมีหน้าที่ไปดึงรายการตำบลของอำเภอ จากฐานข้อมูลมา แล้ว getTumbol ก็ยัดข้อมูลลงไปใน div ว่าง ๆ ที่ชื่อ TumbolList ของ form ที่เตรียมไว้เช่นกัน

3.PHP
3.1 amphur_list.php

1
2
3
4
5
6
7
8
    $Output="<select name='AmphurId' onClick='javascript:getTumbol(document.EmpData.ProvinceId.value,this.value);'>";
    $SQL="SELECT id,name FROM sci._amphur WHERE province='".$_GET["P"]."'";
    $NumRows=$myDB->Query($SQL);
    while($row=$myDB->GetRow()){
      $Output.="<option value='".$row["id"]."'>".$row["name"]."</option>"; 
    }
    $Output.="</select>";
   echo $Output;

3.2 tumbol_list.php

1
2
3
4
5
6
7
8
    $Output="<select name='TumbolId'";
    $SQL="SELECT id,name FROM sci._tumbol WHERE province='".$_GET["P"]."' AND amphur='".$_GET["A"]."'";
    $NumRows=$myDB->Query($SQL);
    while($row=$myDB->GetRow()){
      $Output.="<option value='".$row["id"]."'>".$row["name"]."</option>"; 
    }
    $Output.="</select>";
   echo $Output;

Written by Komkid on December 10th, 2009 with no comments.
Read more articles on JavaScript and Programming.

JavaScript : ตรวจสอบหมายเลขบัตรประจำตัวประชาชน

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
function checkID(id) {
//ตรวจว่าป้อนถูกตามรูปแบบที่กำหนดมั้ย x-xxxx-xxxxx-xx-x
    var regExpObj = /^\d{1}\-\d{1,4}\-\d{1,5}\-\d{1,2}\-\d{1}$/;
    if (regExpObj.test(id) == false) return false;

//ตัด - เอาแต่เลขมาตรวจ
    id = id.replace(/-/g,"");
//ตรวจว่ามี 13 หลักถูกมั้ย
    if (id.length!=13) return false;
//เลขนำหน้าของมีได้แค่ 1-8
    if( id.charAt(0) < 1 || id.charAt(0) > 8 ) return false;
   
//คำนวณหลักสุดท้าย
    for(i=0,sum=0;i<12;i++)
        sum += parseInt(id.charAt(i))*(13-i);
    sum = sum%11;
    if(sum <= 1)
        sum = 1-sum;
    else
        sum = 11-sum;
    return (sum == parseInt(id.charAt(12)));
}

ข้อมูลจาก http://th.wikipedia.org/wiki/เลขประจำตัวประชาชนไทย

Written by Komkid on August 5th, 2009 with 1 comment.
Read more articles on JavaScript and Programming.

« Older articles

No newer articles