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>
번호 제목 글쓴이 날짜 조회 수
246 브라우저의 스크롤을 따라다니는 레이어 두번째 file 황제낙엽 2002.12.20 616
245 마우스 오버시 살짝 뒤로 물러나는 듯한 링크 -_-;; 황제낙엽 2003.01.04 523
244 XP 에서 input type=text 와 input type=password 의 사이즈가 틀리게 보일때 황제낙엽 2004.08.04 583
243 아이디 생성 조건 검사 자바스크립트 모듈 황제낙엽 2004.11.18 535
242 자바스크립트 내장 함수 활용하기 황제낙엽 2005.04.25 595
241 팝업창을 다시 띄우지 않는 소스 황제낙엽 2005.07.16 582
240 무지개링크 (rainbowlink) file 황제낙엽 2005.07.16 572
239 유용한 자바스크립트 예제 몇가지 (Tree 및...) file 황제낙엽 2005.10.20 517
238 브라우저에서 뒤로 가기 막기와 펑션키(function key) 막기 황제낙엽 2005.10.21 638
237 카페의 회람 . 막기 소스 황제낙엽 2005.10.21 324
236 소스 보기 막기 황제낙엽 2005.11.18 606
235 JAVASCRIPT Debuger 프로그램 file 황제낙엽 2005.11.22 468
234 JAVASCRIPT REFERENCE 파일 file 황제낙엽 2005.11.22 577
233 자바 스크립트 플러그인 황제낙엽 2005.11.22 536
232 풍선 도움말 황제낙엽 2005.11.24 392
231 XML+JS 연동 다중셀렉트박스 (1) - <font color="brown">(MS Explorer 전용)</brown> 황제낙엽 2005.12.02 460
230 슬라이딩 메뉴 황제낙엽 2005.12.02 547
229 Methods and properties of Microsoft.XMLDOM 황제낙엽 2005.12.04 482
228 폼으로 XML 데이터 전송 (JSP+Javascript) 황제낙엽 2005.12.04 524
» 자바스크립트로 서버의 XML파일을 접근 (실패했슴) 황제낙엽 2005.12.11 800