sitelink1  
sitelink2  
sitelink3  
sitelink4  
extra_vars4  
extra_vars5  
extra_vars6  
완전... 삽질 그자체... 2일동안 이것만 했는데 결국은... 읽기는 되는데 쓰기가 안됨

<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=euc-kr">
<title>Cugain’s Home</title>
<meta http-equiv=Content-Type content=text/html; charset=EUC-KR>
<link rel="StyleSheet" HREF="./cugain_css/default_style.css" type="text/css" title="style">
</head>
<body leftmargin="0" marginwidth="0" topmargin="0" marginheight="0" bgcolor="white">

<SCRIPT LANGUAGE="JavaScript">
var xmlDoc = new ActiveXObject("Msxml2.DOMDocument.3.0");
xmlDoc.async = false;
xmlDoc.load("./cugain_musicplayer/mp3/mp3_list.xml"); // XML 파일 로드
xmlLoadMain();

/******************************************
        Main.
******************************************/
function xmlLoadMain() {
        var song_list = getMusicList("favorite");
        var apply_value = randSort(0, song_list.length);
        var new_song_list = getSortedList(song_list, apply_value);

        var newXmlDoc = new ActiveXObject("Msxml2.DOMDocument.3.0"); //새로운 xml문서 생성
        newXmlDoc.async = false;        
        newXmlDoc.load("./cugain_musicplayer/mp3/mp3_list.xml"); // XML 파일 로드
        newXmlDoc.save("./mp3.xml"); //세이브안됨... 아마도 스크립트가 서버에 파일을 생성하는 부분이 막힌듯함
}

/******************************************
        category정보를 받아서 음악리스트를 가져온다.
        return <song> Array
******************************************/
function getMusicList(category) {
        var music_tag_list = null;

        if(xmlDoc) {
                var finded_node = null;
                var index_node_list = xmlDoc.getElementsByTagName("index");
                var attribute_list = null;
                for(index_i=0; index_i<index_node_list.length; index_i++) {
                        attribute_list = index_node_list.item(index_i).attributes;
                        for(attribute_i=0; attribute_i<attribute_list.length; attribute_i++) {
                                if(attribute_list.item(attribute_i).text == category)
                                        finded_node = index_node_list.item(index_i);
                        }        
                }

                if(finded_node) {
                        music_tag_list = finded_node.childNodes;
                        return music_tag_list;
                } else {        alert("해당하는 카테고리가 없습니다.");        }
        } else {        alert("파일을 찾을 수 없습니다.");        }
}

/******************************************
        start_var부터 end_var까지 랜덤정렬된 숫자배열 리턴
        return Array
******************************************/
function randSort(start_var, end_var) {
    var_array = new Array();
        var rand_var = null;
        var looping = false;
        var array_loc = 0;
    for (i = start_var ; i <= end_var ; i++) {
                do {
                        looping = false;
                        rand_var = Math.floor(Math.random()*(end_var+1));

                        if(rand_var < start_var) { // 랜덤값이 시작값보다 작은 경우는 스킵하고 루프
                                looping = true;
                        } else {
                                if(var_array.length <= 0) { //최초 숫자는 그냥 입력 후 다시 루프
                                        var_array[array_loc] = rand_var;
                                        array_loc++;
                                        looping = true;
                                        //alert(rand_var);
                                } else if(var_array.length < (end_var-start_var+1)) {         //배열이 꽉 찼을 경우 그냥 루프를 빠져나간다                        
                                        for (j = 0 ; j < var_array.length ; j++) {
                                                if(var_array[j] == rand_var) { //배열에 이미 있는 숫자일 경우 다시 스킵하고 루프
                                                        looping = true;
                                                }
                                        }
                                }
                        }
                }while(looping);

                if(var_array.length < (end_var-start_var+1)) { //배열이 꽉 찼을 경우 그냥 루프를 빠져나간다
                        var_array[array_loc] = rand_var;
                        array_loc++;
                        //alert(rand_var);
                }
        }
        return var_array;
}

/******************************************
        배열과 소트방식을 받아 소팅후 배열로 리턴
        return Array
******************************************/
function getSortedList(list, apply_value) {
        var new_list = new Array();
        for(i=0; i<list.length; i++) {
                new_list[i] = list[apply_value[i]];
        }
        return new_list;
}
</SCRIPT>

</body>
</html>
번호 제목 글쓴이 날짜 조회 수
26 Page Refresh/Reload 황제낙엽 2007.08.24 884
25 Javascript 내장객체 String 황제낙엽 2007.04.10 1012
24 유용한 자바스크립트 예제 몇가지 (Tree 및...) file 황제낙엽 2005.10.20 830
23 자바 스크립트 플러그인 황제낙엽 2005.11.22 1065
22 JAVASCRIPT REFERENCE 파일 file 황제낙엽 2005.11.22 1158
21 JAVASCRIPT Debuger 프로그램 file 황제낙엽 2005.11.22 818
20 SelectBox 밑에 CheckBox가 포함된 리스트 만들기 file 황제낙엽 2007.01.16 1270
19 3시간 걸려서 만든 입력폼 자릿수체크 스크립트 황제낙엽 2006.04.22 1148
18 innerHTML 황제낙엽 2005.12.19 971
17 insertAdjacentHTML Method 황제낙엽 2005.12.19 3724
16 폼으로 XML 데이터 전송 (JSP+Javascript) 황제낙엽 2005.12.04 876
15 Methods and properties of Microsoft.XMLDOM 황제낙엽 2005.12.04 812
14 슬라이딩 메뉴 황제낙엽 2005.12.02 857
13 XML+JS 연동 다중셀렉트박스 (1) - <font color="brown">(MS Explorer 전용)</brown> 황제낙엽 2005.12.02 768
12 풍선 도움말 황제낙엽 2005.11.24 696
11 소스 보기 막기 황제낙엽 2005.11.18 991
10 카페의 회람 . 막기 소스 황제낙엽 2005.10.21 617
9 브라우저에서 뒤로 가기 막기와 펑션키(function key) 막기 황제낙엽 2005.10.21 1244
8 아이디 생성 조건 검사 자바스크립트 모듈 황제낙엽 2004.11.18 1092
7 마우스 오버시 살짝 뒤로 물러나는 듯한 링크 -_-;; 황제낙엽 2003.01.04 829