그런데 개발을 하다보면 여분 필드가 10개 이상 필요로 할 때가 있는데 이때 여분 필드를 추가하는 방법을 알려드리도록 하겠습니다.
DB 컬럼 추가
기존 g5_member 테이블의 여분 필드는 mb_1에서 mb_10까지입니다.
여분 필드를 11~20까지 추가하기 위해 회원정보 수정 페이지(/adm/member_form.php) 나 별도의 PHP 파일에 아래의 코드를 추가하여 실행해줍니다.
for($i=11;$i<=20;$i++){$columnName='mb_'.$i;$previousColumnName='mb_'.($i-1);$sql="SHOW COLUMNS FROM `{$g5['member_table']}` LIKE '{$columnName}'";$res=sql_fetch($sql);if(strpos($res['Type'],'varchar')===false){$sql="ALTERTABLE `{$g5['member_table']}` ADD COLUMN `{$columnName}` VARCHAR(255) NOT NULLDEFAULT '' AFTER `{$previousColumnName}`;";sql_query($sql,false);}}
“SHOW COLUMNS”를 통해 해당 컬럼이 없을 경우에만 새로 추가하는 코드를 만들었습니다.
쿼리가 자주 수행되는 것이 마음에 걸릴 경우 컬럼 생성 후 해당 코드를 제거하셔도 무방합니다.
<script>function extractRandomString() {constinputString=document.getElementById('inputString').value;constdelimiter='|'; // 구분자constextractPattern=/\[(.*?)\]/g; // 추출할 구역 패턴, 글로벌 플래그 추가if (inputString==='') {alert('텍스트를 입력하세요.'); return;}// replace 함수 내에서 랜덤 선택 로직을 적용constresultString=inputString.replace(extractPattern,(match,group1)=>{constchoices=group1.split(delimiter);constrandomChoice=choices[Math.floor(Math.random() *choices.length)];returnrandomChoice;});document.getElementById('result').textContent=resultString; // 결과를 화면에 출력}</script>
ascii : 전송모드를 ASCII모드로 설정한다.(ascii또는 as) binary : 전송모드를 BINARY모드로 설정한다.( binary또는 bi) bell : 명령어 완료시에 벨소리를 나게한다.(bell) bye : ftp접속을 종료하고 빠져나간다.(bye) cd : remote시스템의 디렉토리를 변경한다.(cd 디렉토리명) cdup : remote시스템에서 한단계 상위디렉토리로 이동한다.(cdup) chmod : remote시스템의 파일퍼미션을 변경한다.(chmod 755 index.html) close : ftp접속을 종료한다. (close) delete : remote시스템의 파일을 삭제한다.(delete index.old) dir : remote시스템의 디렉토리 내용을 디스플레이한다.(dir) disconnect : ftp접속을 종료한다.(disconnect) exit : ftp접속을 종료하고 빠져나간다.(exit) get : 지정된 파일하나를 가져온다.(get index.html) hash : 파일전송 도중에 “#”표시를 하여 전송중임을 나타낸다.(hash) help : ftp명령어 도움말을 볼 수 있다.(help또는 help 명령어) lcd : local시스템의 디렉토리를 변경한다.(lcd 디렉토리명) ls : remote시스템의 디렉토리 내용을 디스플레이한다. (ls 또는 ls -l) mdelete : 여러개의 파일을 한꺼번에 지울 때 사용한다.( mdelete *.old) mget : 여러개의 파일을 한꺼번에 가져오려할 때 사용한다. ( mget *.gz) mput : 한꺼번에 여러개의 파일을 remote시스템에 올린다.(mput *.html) open : ftp접속을 시도한다.(open 168.126.72.51또는 open ftp.kornet.net) prompt : 파일전송시에 확인과정을 거친다. on/off 토글 (prompt) put : 하나의 파일을 remote시스템에 올린다.(put index.html) pwd : remote시스템의 현재 작업디렉토리를 표시한다.(pwd) quit : ftp접속을 종료하고 빠져나간다.(quit) rstatus : remote시스템의 상황(version, 어디서, 접속ID등)을 표시한다.(rstatus) rename : remote시스템의 파일명을 바꾼다.(remote 현재파일명 바꿀파일명) rmdir : remote시스템의 디렉토리을 삭제한다.(rmdir 디렉토리명) size :remote시스템에있는 파일의 크기를 byte단위로 표시한다.(size index.html) status : 현재 연결된 ftp세션가지 모드에 대한 설정을 보여준다.(status) type : 전송모드를 설정한다.(type 또는 type ascii 또는 type binary)