팝업관리프로그램(약간에 업뎃과 오류수정) 정보
기타 팝업관리프로그램(약간에 업뎃과 오류수정)
첨부파일
본문
========================================================================
부비컴님의 팝업관리프로그램을 약간 수정해 팝업을 실행할 페이지를 선택하도록 한걸 한번더 수정했습니다.
http://www.sir.co.kr/bbs/tb.php/g4_skin/68765/2d0eeab78787a9d2badc6090016edc4c
========================================================================
*** 그누보드 기반 팝업관리 프로그램 ***
몇몇기능 추가, 수정 하였습니다.
1. 원하는 곳에서 팝업이 실행
2. 관리자 모드 접속시 홈페이지 상단에 페이지별 주소를 저장가능케하여 팝업 생성시 페이지를 따로 적어줄 필요가 없습니다.
3. 기존에 사용하던 REQUEST_URI앞부분에 HTTP_HOST를 붙였습니다.
4. 주소 부분저장시 월드 와이드 웹을 빼버렸습니다.(월드와이드웹이 있든 없든 팝업은 똑같이 실행 되어집니다.)
[특이사항]
링크데이타는 popup_link_updata.php 파일이 있는곳에 popup_link_db.txt파는 파일이 자동생성되어 저장되어집니다.
고로 폴더 퍼미션이 707 이어야 합니다.
[사용전 주의]
그누보드 adm 폴더의 admin.menu300.php 와 upgrade.php를 덮어 쓰게 되니
덮어 씌우기전에 백업을 하세요.(메뉴가 늘어나는 것이니, 별로 영향은 없습니다만..)
그누보드관리자 - 환경설정 - 업그레이드를 하는 경우, 기존 이용자의 경우, 등록된 팝업기록이 모두 삭제 됩니다.!!!
제가 실력이 없기도 하고, 기타등등의 이유로... 이렇게 처리했습니다. 졸속이지요. ^_^
버전 1.2 이상(1.2, 1.3, 1.4등등)을 이용하는 분들은 업그레이드 할 필요가 없습니다.
[설치방법]
1. gnuboard4 안의 파일들을 그누보드 안에 넣어주세요. [사용전 주의] 참조
2. 그누보드 관리자 - 환경설정 - 업그레이드 해주세요 (DB에 팝업창 만드는 것입니다.)
그 후 파일을 지워주세요. \gnuboard4\adm\upgrade.php (안지우면 실수로 등록된 팝업이 모두 사라질수 있습니다.)
3. 그누보드 관리자 - 게시판관리 - 팝업관리 에서 팝업 내용등을 입력하세요
4. popup.php 를 열어서 나오는 소스를 현재 사용중인 head.php 파일 아무곳에나 붙여넣어주시면됩니다.인클루드 하셔도 무관합니다.
꼭해드가 아니여도 사이트에 전반적으로 들어가는 페이지에 해주시는것이 좋습니다.
5. 그후
그누보드 관리자 - 게시판관리 - 팝업관리 에서 내용추가하면서 사용하시면 됩니다.
[마지막 당부사항]
오류가 있어도 부디 너그러히 수정부탁드립니다..^^
혹제답글이 늦어도 너그러히 용서 부탁드립니다..^^
이상 막무가네 Rino였습니다..^^
부비컴님의 팝업관리프로그램을 약간 수정해 팝업을 실행할 페이지를 선택하도록 한걸 한번더 수정했습니다.
http://www.sir.co.kr/bbs/tb.php/g4_skin/68765/2d0eeab78787a9d2badc6090016edc4c
========================================================================
*** 그누보드 기반 팝업관리 프로그램 ***
몇몇기능 추가, 수정 하였습니다.
1. 원하는 곳에서 팝업이 실행
2. 관리자 모드 접속시 홈페이지 상단에 페이지별 주소를 저장가능케하여 팝업 생성시 페이지를 따로 적어줄 필요가 없습니다.
3. 기존에 사용하던 REQUEST_URI앞부분에 HTTP_HOST를 붙였습니다.
4. 주소 부분저장시 월드 와이드 웹을 빼버렸습니다.(월드와이드웹이 있든 없든 팝업은 똑같이 실행 되어집니다.)
[특이사항]
링크데이타는 popup_link_updata.php 파일이 있는곳에 popup_link_db.txt파는 파일이 자동생성되어 저장되어집니다.
고로 폴더 퍼미션이 707 이어야 합니다.
[사용전 주의]
그누보드 adm 폴더의 admin.menu300.php 와 upgrade.php를 덮어 쓰게 되니
덮어 씌우기전에 백업을 하세요.(메뉴가 늘어나는 것이니, 별로 영향은 없습니다만..)
그누보드관리자 - 환경설정 - 업그레이드를 하는 경우, 기존 이용자의 경우, 등록된 팝업기록이 모두 삭제 됩니다.!!!
제가 실력이 없기도 하고, 기타등등의 이유로... 이렇게 처리했습니다. 졸속이지요. ^_^
버전 1.2 이상(1.2, 1.3, 1.4등등)을 이용하는 분들은 업그레이드 할 필요가 없습니다.
[설치방법]
1. gnuboard4 안의 파일들을 그누보드 안에 넣어주세요. [사용전 주의] 참조
2. 그누보드 관리자 - 환경설정 - 업그레이드 해주세요 (DB에 팝업창 만드는 것입니다.)
그 후 파일을 지워주세요. \gnuboard4\adm\upgrade.php (안지우면 실수로 등록된 팝업이 모두 사라질수 있습니다.)
3. 그누보드 관리자 - 게시판관리 - 팝업관리 에서 팝업 내용등을 입력하세요
4. popup.php 를 열어서 나오는 소스를 현재 사용중인 head.php 파일 아무곳에나 붙여넣어주시면됩니다.인클루드 하셔도 무관합니다.
꼭해드가 아니여도 사이트에 전반적으로 들어가는 페이지에 해주시는것이 좋습니다.
5. 그후
그누보드 관리자 - 게시판관리 - 팝업관리 에서 내용추가하면서 사용하시면 됩니다.
[마지막 당부사항]
오류가 있어도 부디 너그러히 수정부탁드립니다..^^
혹제답글이 늦어도 너그러히 용서 부탁드립니다..^^
이상 막무가네 Rino였습니다..^^
추천
5
5
댓글 전체
감사합니다..
그런데 페이지명이 저장이 안되네요..
그리고 매번 페이지를 들어가야 저장이 되는 것인가요
그누보드를 g4에 설치했는데..어떤 수정이 있어야 하나요
그런데 페이지명이 저장이 안되네요..
그리고 매번 페이지를 들어가야 저장이 되는 것인가요
그누보드를 g4에 설치했는데..어떤 수정이 있어야 하나요

오류라인이 있나요?
있으면 좀 알려주세요
있으면 좀 알려주세요
특별한 오류 라인은 없습니다..
아래과 같이 저장 메세지가 뜨고
--- 파일 내용 출력 ---
- 넘버[0] 주소[] 링크명[]
- 파일에 [ 1,,] 내용이 저장을 저장중입니다.
- 파일에 [ 1,,] 가 저장되었습니다.
1
내용은..
주소등이 안나오고..
아래와 같이 숫자와 점만나오네요.
0,,
1,,
물론
팝업창을 등록하려고 해도 링크를 선택하라고 나오며 등록이 안되고요..
아래과 같이 저장 메세지가 뜨고
--- 파일 내용 출력 ---
- 넘버[0] 주소[] 링크명[]
- 파일에 [ 1,,] 내용이 저장을 저장중입니다.
- 파일에 [ 1,,] 가 저장되었습니다.
1
내용은..
주소등이 안나오고..
아래와 같이 숫자와 점만나오네요.
0,,
1,,
물론
팝업창을 등록하려고 해도 링크를 선택하라고 나오며 등록이 안되고요..
개인적인 생각이지만 매 페이지를 들어가서 저장을 클릭하는것보다는 미리 데이타파일을 만드는 방법도 좋을 듯합니다만..
그리고 바로 팝업등록시 불러들이고요..
그리고 바로 팝업등록시 불러들이고요..

음 ..
popup_link_db.txt 파일이 생성이 되었다면 FTP로 접속 하셔서 퍼미션이 644 인지 확인함 해주세요.
그리고 그 상위 폴더는 707 이구요.
아이비호스팅을 바탕으로 제작한거라...ㅠ.ㅠ
전 잘되었는데 ..ㅠ.ㅠ
그래두 이상이 없으시다면 popup_link_db.txt 파일을 한번 지워 보시구 다시 한번 해보심이..
딱히 답을 못드려서 죄송합니다..ㅜ.ㅡ
popup_link_db.txt 파일이 생성이 되었다면 FTP로 접속 하셔서 퍼미션이 644 인지 확인함 해주세요.
그리고 그 상위 폴더는 707 이구요.
아이비호스팅을 바탕으로 제작한거라...ㅠ.ㅠ
전 잘되었는데 ..ㅠ.ㅠ
그래두 이상이 없으시다면 popup_link_db.txt 파일을 한번 지워 보시구 다시 한번 해보심이..
딱히 답을 못드려서 죄송합니다..ㅜ.ㅡ

아 popup.php 파일의 170번째 줄부터 175번째 줄에...
확인을 부탁드릴께요 아이템 네임들과
<form name="pop_save" method="post" action="javascript:pop_save_check(document.pop_save);" enctype="multipart/form-data" style="margin:0px;">
<td><input type="text" name="popname" id="popname" style="width:160px; background-color:#f6f6f6; border:1px solid #d8d8d5; height:21px;" itemname="링크명" required>
<input name="link_url" type="hidden" value="<?=$save_url?>" /></td>
<td width="20"></td>
<td width="100" align="center"><input type="submit" name="btn2" id="button2" value="주소저장" /></td>
</form>
popup_link_updata.php파일의 맨 윗부분
//저장할 주소값과 다시 리턴할 주소값
if($edit_url){$now_url = $edit_url;}
if($link_url){$now_url = $link_url;}
//저장할 링크명
$list_name = $popname;
//지워져야할 파일의 고유넘버
if($dell_num){$dell_num = $dell_num;}
//파일디비의 저장위치
$file_db = "./popup_link_db.txt";
//파일을 불러들일 사이즈를 정한다. txt파일의 한출 최대 사이즈는9999byte 이다.
$data_size = 10000;
서로 맞는지 확인점 부탁드리겠습니다.
popname 값과 link_url 값을 제대로 넘겨 받지 못해서 그런듯 합니다.
확인을 부탁드릴께요 아이템 네임들과
<form name="pop_save" method="post" action="javascript:pop_save_check(document.pop_save);" enctype="multipart/form-data" style="margin:0px;">
<td><input type="text" name="popname" id="popname" style="width:160px; background-color:#f6f6f6; border:1px solid #d8d8d5; height:21px;" itemname="링크명" required>
<input name="link_url" type="hidden" value="<?=$save_url?>" /></td>
<td width="20"></td>
<td width="100" align="center"><input type="submit" name="btn2" id="button2" value="주소저장" /></td>
</form>
popup_link_updata.php파일의 맨 윗부분
//저장할 주소값과 다시 리턴할 주소값
if($edit_url){$now_url = $edit_url;}
if($link_url){$now_url = $link_url;}
//저장할 링크명
$list_name = $popname;
//지워져야할 파일의 고유넘버
if($dell_num){$dell_num = $dell_num;}
//파일디비의 저장위치
$file_db = "./popup_link_db.txt";
//파일을 불러들일 사이즈를 정한다. txt파일의 한출 최대 사이즈는9999byte 이다.
$data_size = 10000;
서로 맞는지 확인점 부탁드리겠습니다.
popname 값과 link_url 값을 제대로 넘겨 받지 못해서 그런듯 합니다.
위의 내용은 맞는 것 같구요....저는 집에 오토셋을 설치한터라..딱히 퍼미션은관계없는듯합니다..
왼도우 2003 이거든요..
왼도우 2003 이거든요..

저는 아무리 제설치 해봐도 이상없이 잘되어지네요..ㅠ.ㅠ
딱히 답을 못드려 죄송합니다..ㅠ.ㅠ
딱히 답을 못드려 죄송합니다..ㅠ.ㅠ

제송한데 마지막으로
popup_link_updata.php 파일 하단분에 메타 테그 주석처리 하시고요
popup_link_db.txt 파일 삭제 후 다시 한번 실행 시켜 보시고 나타나는 내용을 좀 알려주셨으면 합니다.
정상적이면
파일을 생성중입니다. 기다려 주세요..^^
- 파일에 [0,주소,보조메뉴페이지] 내용이 저장을 저장중입니다.
- 파일에 [0,주소,보조메뉴페이지] 가 저장되었습니다.
0
요래 나와 야 정상입니다.
popup_link_updata.php 파일 하단분에 메타 테그 주석처리 하시고요
popup_link_db.txt 파일 삭제 후 다시 한번 실행 시켜 보시고 나타나는 내용을 좀 알려주셨으면 합니다.
정상적이면
파일을 생성중입니다. 기다려 주세요..^^
- 파일에 [0,주소,보조메뉴페이지] 내용이 저장을 저장중입니다.
- 파일에 [0,주소,보조메뉴페이지] 가 저장되었습니다.
0
요래 나와 야 정상입니다.

오류를 보기 위해 화면에 출력했던 오타들을 수정했습니다.
오류가 있거나 저장이 안되시는 분들은
popup_link_updata.php 파일을 아래 와 같이 고쳐주시고
맨하단부에 있는
echo "<meta http-equiv='Refresh' Content='0;url=http://".$now_url."'>";
테그를 주석처리 해수세요
그리고 popup_link_db.txt 파일 삭제후 다시 링크 등록 하시구요
화면에 나타나는 글자 드레그 하셔서 써주세요.
==================== popup_link_updata.php =================
<?
//저장할 주소값과 다시 리턴할 주소값
if($edit_url){
$now_url = $edit_url;
echo "<br>- 에디트주소를 받았습니다.";
}
if($link_url){
$now_url = $link_url;
echo "<br>- 저장주소를 받았습니다.";
}
//저장할 링크명
if($popname){
echo "<br>- 링크명은 ".$popname." 입니다.";
}
$list_name = $popname;
//지워져야할 파일의 고유넘버
if($dell_num){
$dell_num = $dell_num;
echo "<br>- 삭제되어야할 링크넘버는 ".$dell_num."번 입니다.";
}
//파일디비의 저장위치
$file_db = "./popup_link_db.txt";
echo "<br>- 파일저장 경로는 ".$file_db."입니다.";
//파일을 불러들일 사이즈를 정한다. txt파일의 한출 최대 사이즈는9999byte 이다.
$data_size = 10000;
/*
========================================
엔터값을 저장 수정하지 말아주세요
========================================
*/
$enter = "
";
$space = ",";
/*
========================================
엔터값을 저장 수정하지 말아주세요
========================================
*/
//파일이 있는지 없는지를 검사한다.
$file_search = file_exists($file_db);
//파일이 존재 한다면
if($file_search){
echo "<br>- 파일이 존재 합니다.";
//지우기 모드이면
if($edit_url){
echo "<br>- 지우기 모드입니다.";
//파일을 불러들여 저장한다.
$save_file_data = file($file_db);
echo "<br>- 파일을 읽어왔습니다.";
//데이터를 모두 지워버린다.
$r_write = fopen($file_db, "w+");
echo "<br>- 데이타를 모두 지웁니다.";
//새로운넘버링
$j = 0;
echo "<br>- 지우기전 저장한 데이타를 다시 쓰기 시작합니다.";
//for 구문으로 다지워야할 부분만 제외 하고 다시 써나간다.
for ($i = 0; $i < sizeof($save_file_data); $i++) {
//지워야할 링크 넘버를 구하기 위해 풀어해친다.
$splint_data[$i] = explode(",",chop($save_file_data[$i]));
//데이타 넘버와 지워야할 넘버가 같지않다면 저장해라
if($dell_num != $splint_data[$i][0]){
//첫번째 줄이라면
if($j == 0){
//엔터를 제외한 데이터를 저장
$line_save_data[$i] = $j.$space.$splint_data[$i][1].$space.$splint_data[$i][2];
echo "<br>- 루프넘버 : ".$i." 데이타넘버링 : ".$line_save_data[$i]."저장중<br>";
}else{
//엔터를 포함한 데이터를 저장
$line_save_data[$i] = $enter.$j.$space.$splint_data[$i][1].$space.$splint_data[$i][2];
echo "<br>- 루프넘버 : ".$i." 데이타넘버링 : ".$line_save_data[$i]."저장중<br>";
}//첫줄구분구문닫기
//넘버링증가
$j++;
//파일저장
fwrite($r_write,$line_save_data[$i]);
echo "<br>- ".$line_save_data[$i]." 저장했습니다.";
}//데이타넘버비교구문닫기
}//for구문닫기
//파일 닫기
fclose($r_write);
echo "<br>- 수정을 완료하고 파일을 닫았습니다.";
//쓰기모드이면
}else{
//데이터를 덧붙여쓰는 형식으로 불러들인다
$link_file = fopen($file_db, "r+");
echo "<br>- r+로 파일을 불렀습니다.";
}//지우기모드 구별 구문닫기
//파일이 존재하지 않는다면
}else{
echo "파일을 생성중입니다. 기다려 주세요..^^";
//파일을 지우고 다시 쓰는 형식으로 불러들여 파일을 생성한다.
$link_file = fopen($file_db, "a+");
echo "<br>- a+로 파일을 불렀습니다.";
}//파일존재여부확인구문닫기
//지우기모드가 아닐때만 실행
if(!$edit_url){
//파일이 존재하면
if($file_search){
echo "<br>- 파일이 존재합니다.";
//파일의 데이터값을 저장한다.
while(!feof($link_file)) {
$link_list = fgets($link_file,$data_size);
//chop($str);공백을 없애어 준다
$lklist[] = explode(",",chop($link_list));
}//파일데이터구문닫기
echo "<br>- 파일의 데이타 값을 저장했습니다.";
//마지막넘버 구하기
$last_list = sizeof($lklist)-1;
echo "<br>- 마지막 넘버는 ".$last_list."번 입니다.";
//파일출력
echo "<br>--- 파일 내용 출력 ---<br>";
for ($i = 0; $i < sizeof($lklist); $i++) {
echo "<br>- 넘버[".$lklist[$i][0]."] 주소[".$lklist[$i][1]."] 링크명[".$lklist[$i][2]."]<br>";
}//파일출력구문닫기
}//파일존재값구문닫기
//데이터 초기넘버를 만든다(데이타넘버가 0과 같고 루프넘버가 2와 같다면 넘버링은 1이되고 그렇지 않다면 루프넘버와 같다.)
if($lklist[$last_list][0] == 0 && sizeof($lklist) == 2){
$list_num = 1;
echo "<br>- 데이타넘버가 0과 같고 루프넘버가 2와 같아서 링크넘버링을 1로 합니다.";
}else{
$list_num = sizeof($lklist);
echo "<br>- 링크넘버링은 루프넘버와 같습니다.";
}
//저장할 데이타 준비(첫번째 줄에는 엔터를 입력하지 않습니다.)
if(!$file_search){
$now_save_data = $list_num.$space.$now_url.$space.$list_name;
echo "<br>- 파일에 [".$now_save_data."] 내용을 저장중입니다.(첫줄입니다)";
}else{
$now_save_data = $enter.$list_num.$space.$now_url.$space.$list_name;
echo "<br>- 파일에 [".$now_save_data."] 내용을 저장중입니다.";
}//저장데이타구문닫기
if(strlen($lklist[0][0]) == 0){
echo "<br>- 파일은 생성되어 있지만 안에 데이타가 없어 리스트 넘버링이 1이되는것 을 막기 위해 0번으로 다시 지정해서 저장합니다.";
//파일 닫기
fclose($link_file);
echo "<br>- 파일을 닫았습니다.";
$link_file = fopen($file_db, "a+");
echo "<br>- 파일을 다시 열었습니다.";
fwrite($link_file,"0".$space.$now_url.$space.$list_name);
echo "<br>- 파일에 [0".$space.$now_url.$space.$list_name."] 가 저장되었습니다.";
}else{
//내용저장
fwrite($link_file,$now_save_data);
echo "<br>- 파일에 [".$now_save_data."] 가 저장되었습니다.";
}
//파일 닫기
fclose($link_file);
echo "<br>- 파일을 닫았습니다.";
}//지우기모드구문닫기
echo "<br><br><br> 링크리스트 맨처음에위치한 링크넘버링의 랭스는 ".strlen($lklist[0][0])." 입니다.";
//원래있던 페이지로 디턴합니다.
echo "<meta http-equiv='Refresh' Content='0;url=http://".$now_url."'>";
?>
==================== popup_link_updata.php =================
오류가 있거나 저장이 안되시는 분들은
popup_link_updata.php 파일을 아래 와 같이 고쳐주시고
맨하단부에 있는
echo "<meta http-equiv='Refresh' Content='0;url=http://".$now_url."'>";
테그를 주석처리 해수세요
그리고 popup_link_db.txt 파일 삭제후 다시 링크 등록 하시구요
화면에 나타나는 글자 드레그 하셔서 써주세요.
==================== popup_link_updata.php =================
<?
//저장할 주소값과 다시 리턴할 주소값
if($edit_url){
$now_url = $edit_url;
echo "<br>- 에디트주소를 받았습니다.";
}
if($link_url){
$now_url = $link_url;
echo "<br>- 저장주소를 받았습니다.";
}
//저장할 링크명
if($popname){
echo "<br>- 링크명은 ".$popname." 입니다.";
}
$list_name = $popname;
//지워져야할 파일의 고유넘버
if($dell_num){
$dell_num = $dell_num;
echo "<br>- 삭제되어야할 링크넘버는 ".$dell_num."번 입니다.";
}
//파일디비의 저장위치
$file_db = "./popup_link_db.txt";
echo "<br>- 파일저장 경로는 ".$file_db."입니다.";
//파일을 불러들일 사이즈를 정한다. txt파일의 한출 최대 사이즈는9999byte 이다.
$data_size = 10000;
/*
========================================
엔터값을 저장 수정하지 말아주세요
========================================
*/
$enter = "
";
$space = ",";
/*
========================================
엔터값을 저장 수정하지 말아주세요
========================================
*/
//파일이 있는지 없는지를 검사한다.
$file_search = file_exists($file_db);
//파일이 존재 한다면
if($file_search){
echo "<br>- 파일이 존재 합니다.";
//지우기 모드이면
if($edit_url){
echo "<br>- 지우기 모드입니다.";
//파일을 불러들여 저장한다.
$save_file_data = file($file_db);
echo "<br>- 파일을 읽어왔습니다.";
//데이터를 모두 지워버린다.
$r_write = fopen($file_db, "w+");
echo "<br>- 데이타를 모두 지웁니다.";
//새로운넘버링
$j = 0;
echo "<br>- 지우기전 저장한 데이타를 다시 쓰기 시작합니다.";
//for 구문으로 다지워야할 부분만 제외 하고 다시 써나간다.
for ($i = 0; $i < sizeof($save_file_data); $i++) {
//지워야할 링크 넘버를 구하기 위해 풀어해친다.
$splint_data[$i] = explode(",",chop($save_file_data[$i]));
//데이타 넘버와 지워야할 넘버가 같지않다면 저장해라
if($dell_num != $splint_data[$i][0]){
//첫번째 줄이라면
if($j == 0){
//엔터를 제외한 데이터를 저장
$line_save_data[$i] = $j.$space.$splint_data[$i][1].$space.$splint_data[$i][2];
echo "<br>- 루프넘버 : ".$i." 데이타넘버링 : ".$line_save_data[$i]."저장중<br>";
}else{
//엔터를 포함한 데이터를 저장
$line_save_data[$i] = $enter.$j.$space.$splint_data[$i][1].$space.$splint_data[$i][2];
echo "<br>- 루프넘버 : ".$i." 데이타넘버링 : ".$line_save_data[$i]."저장중<br>";
}//첫줄구분구문닫기
//넘버링증가
$j++;
//파일저장
fwrite($r_write,$line_save_data[$i]);
echo "<br>- ".$line_save_data[$i]." 저장했습니다.";
}//데이타넘버비교구문닫기
}//for구문닫기
//파일 닫기
fclose($r_write);
echo "<br>- 수정을 완료하고 파일을 닫았습니다.";
//쓰기모드이면
}else{
//데이터를 덧붙여쓰는 형식으로 불러들인다
$link_file = fopen($file_db, "r+");
echo "<br>- r+로 파일을 불렀습니다.";
}//지우기모드 구별 구문닫기
//파일이 존재하지 않는다면
}else{
echo "파일을 생성중입니다. 기다려 주세요..^^";
//파일을 지우고 다시 쓰는 형식으로 불러들여 파일을 생성한다.
$link_file = fopen($file_db, "a+");
echo "<br>- a+로 파일을 불렀습니다.";
}//파일존재여부확인구문닫기
//지우기모드가 아닐때만 실행
if(!$edit_url){
//파일이 존재하면
if($file_search){
echo "<br>- 파일이 존재합니다.";
//파일의 데이터값을 저장한다.
while(!feof($link_file)) {
$link_list = fgets($link_file,$data_size);
//chop($str);공백을 없애어 준다
$lklist[] = explode(",",chop($link_list));
}//파일데이터구문닫기
echo "<br>- 파일의 데이타 값을 저장했습니다.";
//마지막넘버 구하기
$last_list = sizeof($lklist)-1;
echo "<br>- 마지막 넘버는 ".$last_list."번 입니다.";
//파일출력
echo "<br>--- 파일 내용 출력 ---<br>";
for ($i = 0; $i < sizeof($lklist); $i++) {
echo "<br>- 넘버[".$lklist[$i][0]."] 주소[".$lklist[$i][1]."] 링크명[".$lklist[$i][2]."]<br>";
}//파일출력구문닫기
}//파일존재값구문닫기
//데이터 초기넘버를 만든다(데이타넘버가 0과 같고 루프넘버가 2와 같다면 넘버링은 1이되고 그렇지 않다면 루프넘버와 같다.)
if($lklist[$last_list][0] == 0 && sizeof($lklist) == 2){
$list_num = 1;
echo "<br>- 데이타넘버가 0과 같고 루프넘버가 2와 같아서 링크넘버링을 1로 합니다.";
}else{
$list_num = sizeof($lklist);
echo "<br>- 링크넘버링은 루프넘버와 같습니다.";
}
//저장할 데이타 준비(첫번째 줄에는 엔터를 입력하지 않습니다.)
if(!$file_search){
$now_save_data = $list_num.$space.$now_url.$space.$list_name;
echo "<br>- 파일에 [".$now_save_data."] 내용을 저장중입니다.(첫줄입니다)";
}else{
$now_save_data = $enter.$list_num.$space.$now_url.$space.$list_name;
echo "<br>- 파일에 [".$now_save_data."] 내용을 저장중입니다.";
}//저장데이타구문닫기
if(strlen($lklist[0][0]) == 0){
echo "<br>- 파일은 생성되어 있지만 안에 데이타가 없어 리스트 넘버링이 1이되는것 을 막기 위해 0번으로 다시 지정해서 저장합니다.";
//파일 닫기
fclose($link_file);
echo "<br>- 파일을 닫았습니다.";
$link_file = fopen($file_db, "a+");
echo "<br>- 파일을 다시 열었습니다.";
fwrite($link_file,"0".$space.$now_url.$space.$list_name);
echo "<br>- 파일에 [0".$space.$now_url.$space.$list_name."] 가 저장되었습니다.";
}else{
//내용저장
fwrite($link_file,$now_save_data);
echo "<br>- 파일에 [".$now_save_data."] 가 저장되었습니다.";
}
//파일 닫기
fclose($link_file);
echo "<br>- 파일을 닫았습니다.";
}//지우기모드구문닫기
echo "<br><br><br> 링크리스트 맨처음에위치한 링크넘버링의 랭스는 ".strlen($lklist[0][0])." 입니다.";
//원래있던 페이지로 디턴합니다.
echo "<meta http-equiv='Refresh' Content='0;url=http://".$now_url."'>";
?>
==================== popup_link_updata.php =================
저번과 똑 같습니다...
아마 왼도우와 리눅스의 차이가 아닐까요....??
아마 왼도우와 리눅스의 차이가 아닐까요....??

아 그렇군요..ㅠ.ㅠ

위에분 문제가 언어셑 문제가 아닐까요?
utf-8로 수정해서 사용하실분은
autoPOPUP.php 부분 26번째 줄을
<meta http-equiv="Content-Type" content="text/html; charset=<?=$g4['charset']?>">
로 수정해 사용하시면
팝업창이 안깨집니다.
utf-8로 수정해서 사용하실분은
autoPOPUP.php 부분 26번째 줄을
<meta http-equiv="Content-Type" content="text/html; charset=<?=$g4['charset']?>">
로 수정해 사용하시면
팝업창이 안깨집니다.
감사합니다.
감사합니다.~

좋네요
공개 감사합니다.... 잘 쓸께요..
감사합니다~~~요

멋있는 자료 감사합니다.

감사합니다.
감사합니다...
팝업이 잘 안되는데
- 파일저장 경로는 ./popup_link_db.txt입니다.파일을 생성중입니다. 기다려 주세요..^^
- a+로 파일을 불렀습니다.
- 링크넘버링은 루프넘버와 같습니다.
- 파일에 [0,,] 내용을 저장중입니다.(첫줄입니다)
- 파일은 생성되어 있지만 안에 데이타가 없어 리스트 넘버링이 1이되는것 을 막기 위해 0번으로 다시 지정해서 저장합니다.
- 파일을 닫았습니다.
- 파일을 다시 열었습니다.
- 파일에 [0,,] 가 저장되었습니다.
- 파일을 닫았습니다.
링크리스트 맨처음에위치한 링크넘버링의 랭스는 0 입니다.
어떻게 해야 할까요?
- 파일저장 경로는 ./popup_link_db.txt입니다.파일을 생성중입니다. 기다려 주세요..^^
- a+로 파일을 불렀습니다.
- 링크넘버링은 루프넘버와 같습니다.
- 파일에 [0,,] 내용을 저장중입니다.(첫줄입니다)
- 파일은 생성되어 있지만 안에 데이타가 없어 리스트 넘버링이 1이되는것 을 막기 위해 0번으로 다시 지정해서 저장합니다.
- 파일을 닫았습니다.
- 파일을 다시 열었습니다.
- 파일에 [0,,] 가 저장되었습니다.
- 파일을 닫았습니다.
링크리스트 맨처음에위치한 링크넘버링의 랭스는 0 입니다.
어떻게 해야 할까요?
질문입니다.
압축풀어서 5개 파일 adm 에 복사시켜줬구요. db 생성 됩니다. 관리자페이지에서 팝업생성등록 해줬구요.. 첫 index.php 파일안에 popup.php 인쿠르드 해줬습니다. 헌데 아무 반응이 없네요.
1. popup_link_db.txt 에 루트에 팝업 뜨게할려면 0,/,인사말 이런형태로 넣으면 되나요?
2. autoPOPUP.php, popup_link_updata.php 파일을 어디에 위치하라는 말씀이 없으신데.. 걍 루트에다 넣으면 되나요?
3. include 되는 형태가 연동이 안이뤄진거 같은데 설명좀 부탁드립니다.
압축풀어서 5개 파일 adm 에 복사시켜줬구요. db 생성 됩니다. 관리자페이지에서 팝업생성등록 해줬구요.. 첫 index.php 파일안에 popup.php 인쿠르드 해줬습니다. 헌데 아무 반응이 없네요.
1. popup_link_db.txt 에 루트에 팝업 뜨게할려면 0,/,인사말 이런형태로 넣으면 되나요?
2. autoPOPUP.php, popup_link_updata.php 파일을 어디에 위치하라는 말씀이 없으신데.. 걍 루트에다 넣으면 되나요?
3. include 되는 형태가 연동이 안이뤄진거 같은데 설명좀 부탁드립니다.
팝업관리프로그램...좋네요..
감사합니다..^^
팝업관리 프로그램이 있는거 오늘 알았어요.
잘 쓸게요..^^
팝업관리 프로그램이 있는거 오늘 알았어요.
잘 쓸게요..^^

아고 제송합니다..^^
popup_link_updata.php 파일을 아래와 같이 수정해 주세요..^^
지금 까지 안되시던분들은 아래와 같이 수정해주세요 전체 드레그 하셔서 복사 붙여 넣기 하시면됩니다.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
<?
//저장할 주소값과 다시 리턴할 주소값
$edit_url = $_POST['edit_url'];
$link_url = $_POST['link_url'];
$popname = $_POST['popname'];
$dell_num = $_POST['dell_num'];
if($edit_url){
$now_url = $edit_url;
echo "<br>- 에디트주소를 받았습니다.";
echo "<br>EDIT_URL : ".$edit_url."<br>";
}
if($link_url){
$now_url = $link_url;
echo "<br>- 저장주소를 받았습니다.";
echo "<br>LINK_URL : ".$link_url."<br>";
}
//저장할 링크명
if($popname){
echo "<br>- 링크명은 ".$popname." 입니다.";
}
$list_name = $popname;
//지워져야할 파일의 고유넘버
if($dell_num){
$dell_num = $dell_num;
echo "<br>- 삭제되어야할 링크넘버는 ".$dell_num."번 입니다.";
}
//파일디비의 저장위치
$file_db = "./popup_link_db.txt";
echo "<br>- 파일저장 경로는 ".$file_db."입니다.";
//파일을 불러들일 사이즈를 정한다. txt파일의 한출 최대 사이즈는9999byte 이다.
$data_size = 10000;
/*
========================================
엔터값을 저장 수정하지 말아주세요
========================================
*/
$enter = "
";
$space = ",";
/*
========================================
엔터값을 저장 수정하지 말아주세요
========================================
*/
//파일이 있는지 없는지를 검사한다.
$file_search = file_exists($file_db);
//파일이 존재 한다면
if($file_search){
echo "<br>- 파일이 존재 합니다.";
//지우기 모드이면
if($edit_url){
echo "<br>- 지우기 모드입니다.";
//파일을 불러들여 저장한다.
$save_file_data = file($file_db);
echo "<br>- 파일을 읽어왔습니다.";
//데이터를 모두 지워버린다.
$r_write = fopen($file_db, "w+");
echo "<br>- 데이타를 모두 지웁니다.";
//새로운넘버링
$j = 0;
echo "<br>- 지우기전 저장한 데이타를 다시 쓰기 시작합니다.";
//for 구문으로 다지워야할 부분만 제외 하고 다시 써나간다.
for ($i = 0; $i < sizeof($save_file_data); $i++) {
//지워야할 링크 넘버를 구하기 위해 풀어해친다.
$splint_data[$i] = explode(",",chop($save_file_data[$i]));
//데이타 넘버와 지워야할 넘버가 같지않다면 저장해라
if($dell_num != $splint_data[$i][0]){
//첫번째 줄이라면
if($j == 0){
//엔터를 제외한 데이터를 저장
$line_save_data[$i] = $j.$space.$splint_data[$i][1].$space.$splint_data[$i][2];
echo "<br>- 루프넘버 : ".$i." 데이타넘버링 : ".$line_save_data[$i]."저장중<br>";
}else{
//엔터를 포함한 데이터를 저장
$line_save_data[$i] = $enter.$j.$space.$splint_data[$i][1].$space.$splint_data[$i][2];
echo "<br>- 루프넘버 : ".$i." 데이타넘버링 : ".$line_save_data[$i]."저장중<br>";
}//첫줄구분구문닫기
//넘버링증가
$j++;
//파일저장
fwrite($r_write,$line_save_data[$i]);
echo "<br>- ".$line_save_data[$i]." 저장했습니다.";
}//데이타넘버비교구문닫기
}//for구문닫기
//파일 닫기
fclose($r_write);
echo "<br>- 수정을 완료하고 파일을 닫았습니다.";
//쓰기모드이면
}else{
//데이터를 덧붙여쓰는 형식으로 불러들인다
$link_file = fopen($file_db, "r+");
echo "<br>- r+로 파일을 불렀습니다.";
}//지우기모드 구별 구문닫기
//파일이 존재하지 않는다면
}else{
echo "파일을 생성중입니다. 기다려 주세요..^^";
//파일을 지우고 다시 쓰는 형식으로 불러들여 파일을 생성한다.
$link_file = fopen($file_db, "a+");
echo "<br>- a+로 파일을 불렀습니다.";
}//파일존재여부확인구문닫기
//지우기모드가 아닐때만 실행
if(!$edit_url){
//파일이 존재하면
if($file_search){
echo "<br>- 파일이 존재합니다.";
//파일의 데이터값을 저장한다.
while(!feof($link_file)) {
$link_list = fgets($link_file,$data_size);
//chop($str);공백을 없애어 준다
$lklist[] = explode(",",chop($link_list));
}//파일데이터구문닫기
echo "<br>- 파일의 데이타 값을 저장했습니다.";
//마지막넘버 구하기
$last_list = sizeof($lklist)-1;
echo "<br>- 마지막 넘버는 ".$last_list."번 입니다.";
//파일출력
echo "<br>--- 파일 내용 출력 ---<br>";
for ($i = 0; $i < sizeof($lklist); $i++) {
echo "<br>- 넘버[".$lklist[$i][0]."] 주소[".$lklist[$i][1]."] 링크명[".$lklist[$i][2]."]<br>";
}//파일출력구문닫기
}//파일존재값구문닫기
//데이터 초기넘버를 만든다(데이타넘버가 0과 같고 루프넘버가 2와 같다면 넘버링은 1이되고 그렇지 않다면 루프넘버와 같다.)
if($lklist[$last_list][0] == 0 && sizeof($lklist) == 2){
$list_num = 1;
echo "<br>- 데이타넘버가 0과 같고 루프넘버가 2와 같아서 링크넘버링을 1로 합니다.";
}else{
$list_num = sizeof($lklist);
echo "<br>- 링크넘버링은 루프넘버와 같습니다.";
}
//저장할 데이타 준비(첫번째 줄에는 엔터를 입력하지 않습니다.)
if(!$file_search){
$now_save_data = $list_num.$space.$now_url.$space.$list_name;
echo "<br>- 파일에 [".$now_save_data."] 내용을 저장중입니다.(첫줄입니다)";
}else{
$now_save_data = $enter.$list_num.$space.$now_url.$space.$list_name;
echo "<br>- 파일에 [".$now_save_data."] 내용을 저장중입니다.";
}//저장데이타구문닫기
if(strlen($lklist[0][0]) == 0){
echo "<br>- 파일은 생성되어 있지만 안에 데이타가 없어 리스트 넘버링이 1이되는것 을 막기 위해 0번으로 다시 지정해서 저장합니다.";
//파일 닫기
fclose($link_file);
echo "<br>- 파일을 닫았습니다.";
$link_file = fopen($file_db, "a+");
echo "<br>- 파일을 다시 열었습니다.";
fwrite($link_file,"0".$space.$now_url.$space.$list_name);
echo "<br>- 파일에 [0".$space.$now_url.$space.$list_name."] 가 저장되었습니다.";
}else{
//내용저장
fwrite($link_file,$now_save_data);
echo "<br>- 파일에 [".$now_save_data."] 가 저장되었습니다.";
}
//파일 닫기
fclose($link_file);
echo "<br>- 파일을 닫았습니다.";
}//지우기모드구문닫기
echo "<br><br><br> 링크리스트 맨처음에위치한 링크넘버링의 랭스는 ".strlen($lklist[0][0])." 입니다.";
//원래있던 페이지로 디턴합니다.
echo "<br><br>원래 있던 페이지로 디턴합니다.(".$now_url.")";
echo "<meta http-equiv='Refresh' Content='0;url=http://".$now_url."'>";
?>
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
popup_link_updata.php 파일을 아래와 같이 수정해 주세요..^^
지금 까지 안되시던분들은 아래와 같이 수정해주세요 전체 드레그 하셔서 복사 붙여 넣기 하시면됩니다.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
<?
//저장할 주소값과 다시 리턴할 주소값
$edit_url = $_POST['edit_url'];
$link_url = $_POST['link_url'];
$popname = $_POST['popname'];
$dell_num = $_POST['dell_num'];
if($edit_url){
$now_url = $edit_url;
echo "<br>- 에디트주소를 받았습니다.";
echo "<br>EDIT_URL : ".$edit_url."<br>";
}
if($link_url){
$now_url = $link_url;
echo "<br>- 저장주소를 받았습니다.";
echo "<br>LINK_URL : ".$link_url."<br>";
}
//저장할 링크명
if($popname){
echo "<br>- 링크명은 ".$popname." 입니다.";
}
$list_name = $popname;
//지워져야할 파일의 고유넘버
if($dell_num){
$dell_num = $dell_num;
echo "<br>- 삭제되어야할 링크넘버는 ".$dell_num."번 입니다.";
}
//파일디비의 저장위치
$file_db = "./popup_link_db.txt";
echo "<br>- 파일저장 경로는 ".$file_db."입니다.";
//파일을 불러들일 사이즈를 정한다. txt파일의 한출 최대 사이즈는9999byte 이다.
$data_size = 10000;
/*
========================================
엔터값을 저장 수정하지 말아주세요
========================================
*/
$enter = "
";
$space = ",";
/*
========================================
엔터값을 저장 수정하지 말아주세요
========================================
*/
//파일이 있는지 없는지를 검사한다.
$file_search = file_exists($file_db);
//파일이 존재 한다면
if($file_search){
echo "<br>- 파일이 존재 합니다.";
//지우기 모드이면
if($edit_url){
echo "<br>- 지우기 모드입니다.";
//파일을 불러들여 저장한다.
$save_file_data = file($file_db);
echo "<br>- 파일을 읽어왔습니다.";
//데이터를 모두 지워버린다.
$r_write = fopen($file_db, "w+");
echo "<br>- 데이타를 모두 지웁니다.";
//새로운넘버링
$j = 0;
echo "<br>- 지우기전 저장한 데이타를 다시 쓰기 시작합니다.";
//for 구문으로 다지워야할 부분만 제외 하고 다시 써나간다.
for ($i = 0; $i < sizeof($save_file_data); $i++) {
//지워야할 링크 넘버를 구하기 위해 풀어해친다.
$splint_data[$i] = explode(",",chop($save_file_data[$i]));
//데이타 넘버와 지워야할 넘버가 같지않다면 저장해라
if($dell_num != $splint_data[$i][0]){
//첫번째 줄이라면
if($j == 0){
//엔터를 제외한 데이터를 저장
$line_save_data[$i] = $j.$space.$splint_data[$i][1].$space.$splint_data[$i][2];
echo "<br>- 루프넘버 : ".$i." 데이타넘버링 : ".$line_save_data[$i]."저장중<br>";
}else{
//엔터를 포함한 데이터를 저장
$line_save_data[$i] = $enter.$j.$space.$splint_data[$i][1].$space.$splint_data[$i][2];
echo "<br>- 루프넘버 : ".$i." 데이타넘버링 : ".$line_save_data[$i]."저장중<br>";
}//첫줄구분구문닫기
//넘버링증가
$j++;
//파일저장
fwrite($r_write,$line_save_data[$i]);
echo "<br>- ".$line_save_data[$i]." 저장했습니다.";
}//데이타넘버비교구문닫기
}//for구문닫기
//파일 닫기
fclose($r_write);
echo "<br>- 수정을 완료하고 파일을 닫았습니다.";
//쓰기모드이면
}else{
//데이터를 덧붙여쓰는 형식으로 불러들인다
$link_file = fopen($file_db, "r+");
echo "<br>- r+로 파일을 불렀습니다.";
}//지우기모드 구별 구문닫기
//파일이 존재하지 않는다면
}else{
echo "파일을 생성중입니다. 기다려 주세요..^^";
//파일을 지우고 다시 쓰는 형식으로 불러들여 파일을 생성한다.
$link_file = fopen($file_db, "a+");
echo "<br>- a+로 파일을 불렀습니다.";
}//파일존재여부확인구문닫기
//지우기모드가 아닐때만 실행
if(!$edit_url){
//파일이 존재하면
if($file_search){
echo "<br>- 파일이 존재합니다.";
//파일의 데이터값을 저장한다.
while(!feof($link_file)) {
$link_list = fgets($link_file,$data_size);
//chop($str);공백을 없애어 준다
$lklist[] = explode(",",chop($link_list));
}//파일데이터구문닫기
echo "<br>- 파일의 데이타 값을 저장했습니다.";
//마지막넘버 구하기
$last_list = sizeof($lklist)-1;
echo "<br>- 마지막 넘버는 ".$last_list."번 입니다.";
//파일출력
echo "<br>--- 파일 내용 출력 ---<br>";
for ($i = 0; $i < sizeof($lklist); $i++) {
echo "<br>- 넘버[".$lklist[$i][0]."] 주소[".$lklist[$i][1]."] 링크명[".$lklist[$i][2]."]<br>";
}//파일출력구문닫기
}//파일존재값구문닫기
//데이터 초기넘버를 만든다(데이타넘버가 0과 같고 루프넘버가 2와 같다면 넘버링은 1이되고 그렇지 않다면 루프넘버와 같다.)
if($lklist[$last_list][0] == 0 && sizeof($lklist) == 2){
$list_num = 1;
echo "<br>- 데이타넘버가 0과 같고 루프넘버가 2와 같아서 링크넘버링을 1로 합니다.";
}else{
$list_num = sizeof($lklist);
echo "<br>- 링크넘버링은 루프넘버와 같습니다.";
}
//저장할 데이타 준비(첫번째 줄에는 엔터를 입력하지 않습니다.)
if(!$file_search){
$now_save_data = $list_num.$space.$now_url.$space.$list_name;
echo "<br>- 파일에 [".$now_save_data."] 내용을 저장중입니다.(첫줄입니다)";
}else{
$now_save_data = $enter.$list_num.$space.$now_url.$space.$list_name;
echo "<br>- 파일에 [".$now_save_data."] 내용을 저장중입니다.";
}//저장데이타구문닫기
if(strlen($lklist[0][0]) == 0){
echo "<br>- 파일은 생성되어 있지만 안에 데이타가 없어 리스트 넘버링이 1이되는것 을 막기 위해 0번으로 다시 지정해서 저장합니다.";
//파일 닫기
fclose($link_file);
echo "<br>- 파일을 닫았습니다.";
$link_file = fopen($file_db, "a+");
echo "<br>- 파일을 다시 열었습니다.";
fwrite($link_file,"0".$space.$now_url.$space.$list_name);
echo "<br>- 파일에 [0".$space.$now_url.$space.$list_name."] 가 저장되었습니다.";
}else{
//내용저장
fwrite($link_file,$now_save_data);
echo "<br>- 파일에 [".$now_save_data."] 가 저장되었습니다.";
}
//파일 닫기
fclose($link_file);
echo "<br>- 파일을 닫았습니다.";
}//지우기모드구문닫기
echo "<br><br><br> 링크리스트 맨처음에위치한 링크넘버링의 랭스는 ".strlen($lklist[0][0])." 입니다.";
//원래있던 페이지로 디턴합니다.
echo "<br><br>원래 있던 페이지로 디턴합니다.(".$now_url.")";
echo "<meta http-equiv='Refresh' Content='0;url=http://".$now_url."'>";
?>
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
감사합니다.잘쓰겠습니다
1. admin으로 로그인했을때만 팝업이 뜨네여.
2. www가 붙냐 안붙냐에 따라서 될때도 있고 안될때도 있습니다.
저만 이런건가요..
2. www가 붙냐 안붙냐에 따라서 될때도 있고 안될때도 있습니다.
저만 이런건가요..

그럴리가 없는데요 링크 페이지를 슈퍼어디민 으로 묵으셨으면 1번과 같은 문제가 생기는데요 그걸 해제 해주세요.
2번문제의 오류는 프로그램 상에서 모두 월드 와이드 웹을 빼낸후 비교 하게 설정 했습니다. 좀더 확인 후 문제점 해결시 쪽지날려드릴께요..^^
2번문제의 오류는 프로그램 상에서 모두 월드 와이드 웹을 빼낸후 비교 하게 설정 했습니다. 좀더 확인 후 문제점 해결시 쪽지날려드릴께요..^^

정말 좋네요...잘쓰겠습니다.

아 원본이네요^^ 감사합니다^^^!!
써먹어야 하는데 언제 써먹지 ㅡ.ㅡ에고 ㅋ
암튼, 감사감사^^
암튼, 감사감사^^
몇가지 구동을 방해하는 버그를 올립니다.
일단 autuPOPUP.php에 <meta http-equiv="Content-Type" content="text/html; charset=euc-kr"> 이 부분이 위에분이 말씀해 주신대로
<meta http-equiv="Content-Type" content="text/html; charset=<?=$g4['charset']?>">
이렇게 바뀌어야 하며 위치또한 <title>태그 전에 놓여야 합니다. 파폭에선 아래에 있어도 페이지를 메타태그를 기준으로 디코딩하여 열지만 익스는 맨 우선적으로 찾은 문자셋을 기준으로 열어버려서 백지상태로 나옵니다.
위에 '웃자웃자'님의 문제사항
2. www가 붙냐 안붙냐에 따라서 될때도 있고 안될때도 있습니다.
이건 popup.php에
$szlink[$i] = explode(".",$arrPOP[$i]["szLink"]);
if($szlink[$i][0] == "www"){
$szlink[$i] = $szlink[$i][1].".".$szlink[$i][2];
}
이부분에서 일어나는 문제입니다.
기존의 코드는 .을 기준으로 explode된 배열중 1번째와 두번째 열만 가져다 다시 조립합니다.
그러나 www.xxx.com/index.php 와 같은 주소를 볼때 점이 세개나 있기에 새로 조립된 링크는 xxx.com/index 까지만 나오게 됩니다.
이걸 substring이나 explode된 변수를 루프 돌리도록 하시면 되겠습니다.
일단 autuPOPUP.php에 <meta http-equiv="Content-Type" content="text/html; charset=euc-kr"> 이 부분이 위에분이 말씀해 주신대로
<meta http-equiv="Content-Type" content="text/html; charset=<?=$g4['charset']?>">
이렇게 바뀌어야 하며 위치또한 <title>태그 전에 놓여야 합니다. 파폭에선 아래에 있어도 페이지를 메타태그를 기준으로 디코딩하여 열지만 익스는 맨 우선적으로 찾은 문자셋을 기준으로 열어버려서 백지상태로 나옵니다.
위에 '웃자웃자'님의 문제사항
2. www가 붙냐 안붙냐에 따라서 될때도 있고 안될때도 있습니다.
이건 popup.php에
$szlink[$i] = explode(".",$arrPOP[$i]["szLink"]);
if($szlink[$i][0] == "www"){
$szlink[$i] = $szlink[$i][1].".".$szlink[$i][2];
}
이부분에서 일어나는 문제입니다.
기존의 코드는 .을 기준으로 explode된 배열중 1번째와 두번째 열만 가져다 다시 조립합니다.
그러나 www.xxx.com/index.php 와 같은 주소를 볼때 점이 세개나 있기에 새로 조립된 링크는 xxx.com/index 까지만 나오게 됩니다.
이걸 substring이나 explode된 변수를 루프 돌리도록 하시면 되겠습니다.

헐 흑염님 감사합니다.
차마 생각지도 못했던걸 찾아 주셨네요..^^
차마 생각지도 못했던걸 찾아 주셨네요..^^
감사합니다...
감사합니다 잘쓸께요

흑염님의 조언에 따라 수정했습니다...^^ 이거 개을러 터져가..ㅠ.ㅠ 이제 올리네요..
우선 popup.php 페이지를 먼저 수정했습니다.
=========================================================
<?php
/**
* 팝업관리 프로그램
**/
//현재 주소를 저장합니다. 이때 월드와이드웹이 앞에 붙어 있는지를 검사후 있다면 지워버립니다.
$world = explode(".",$_SERVER['HTTP_HOST']);
// 흑염님의 조언으로 루프로 돌려 3차 4차 도메인 까지 커버..^^
$world_c = sizeof($world);
if($world[0] == "www"){
$world = $world[1];
for($a=2; $a<$world_c; $a++){
$world += ".".$world[$a];
}
}else{
$world = $_SERVER['HTTP_HOST'];
}
$now_url = $world.$_SERVER['REQUEST_URI'];
//이번에는 실제 저장될 주소입니다.
$save_url = $_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'];
// 팝업 대상 목록 가져오기 - 시작 //
$nNow = time();
$szSql = "
SELECT nIdx, nStartDate, nEndDate, nWidth, nHeight, nLeft, nRight , nOptions , szLink
FROM ZOTTA_POPUP
WHERE szView='Y' AND ($nNow BETWEEN nStartDate AND nEndDate)
ORDER BY nIdx asc
";
$input = mysql_query($szSql);
$dataArray = array ();
for ($i = 0; $i < mysql_num_fields($input); $i ++) {
array_push($dataArray, mysql_field_name($input, $i));
}
$fieldArray =$dataArray;
$returnArray = array ();
$onerowArray = array ();
while ($row = mysql_fetch_row($input)) {
for ($j = 0; $j < sizeof($fieldArray); $j ++) {
//$onerowArray = array_merge($onerowArray, array( $fieldArray[$j] => $row[$fieldArray[$j]] ));
$onerowArray = array_merge($onerowArray, array ($fieldArray[$j] => $row[$j]));
}
array_push($returnArray, $onerowArray);
}
$onerowArray = '';
$arrPOP = $returnArray;
//print_r($arrPOP);
// 팝업 대상 목록 가져오기 - 끝 //
# 목록에 따라, 새창 띄우기
for ( $i=0; $i < count($arrPOP); $i++){
if ($arrPOP[$i]["nIdx"])
{
//위와 마찬가지로 월드와이드웹을 빼네어줍니다.
$szlink[$i] = explode(".",$arrPOP[$i]["szLink"]);
// 흑염님의 조언으로 루프로 돌려 3차 4차 도메인 까지 커버..^^
$sZ_c = sizeof($szlink[$i]);
if($szlink[$i][0] == "www"){
$szlink[$i] = $szlink[$i][1];
for($z=2; $z<$sz_c; $z++){
$szlink[$i] = $szlink[$i].".".$szlink[$i][$z];
}
}else{
$szlink[$i] = $arrPOP[$i]["szLink"];
}
if ( $now_url == $szlink[$i] )
{
$cookieName = "zotta_popup_idx".$arrPOP[$i]["nIdx"];
if ($_COOKIE[$cookieName] != "done")
{
$szWidth = $arrPOP[$i][nWidth];
$szHeight = $arrPOP[$i][nHeight] + 27;
$szLeft = $arrPOP[$i][nLeft];
$szRight = $arrPOP[$i][nRight];
$options = $arrPOP[$i][nOptions];
$scrollbar = ($options == "Y") ? "scrollbars=yes" : "scrollbars=no";
$optionsS = $scrollbar.",width=".$szWidth.",height=".$szHeight.",left=".$szLeft.",top=".$szRight.", status=no";
echo "\r\n<script language='javascript'>\r\n\t window.open( '".$g4[path]."/autoPOPUP.php?idx=".$arrPOP[$i]["nIdx"]."', 'popup_nIdx".$arrPOP[$i]["nIdx"]."', '".$optionsS."'); \r\n</script>";
}
}
}
}
//어드민 계정만 볼수 있도록 설정
if ($is_admin == "super" || $is_auth) {
?>
<table width="800" border="0" cellspacing="0" cellpadding="0">
<tr>
<td height="30">
<?
//파일이 있는지 없는지를 검사한다.
$file_search = file_exists($g4['path']."/popup_link_db.txt");
//파일이 존재 한다면
if($file_search){
//데이터를 읽기 형식으로 불러들인다
$link_file = file($g4['path']."/popup_link_db.txt");
//파일이 존재하면
if($file_search){
?>
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<form name="dell" method="post" action="javascript:dell_check(document.dell);" enctype="multipart/form-data" style="margin:0px;">
<input name="edit_url" type="hidden" value="<?=$save_url?>">
<tr>
<td height="21" align="right">
<select name="dell_num" id="popuplist" style="width:660px; background-color:#f6f6f6; border:1px solid #d8d8d5; height:21px;" itemname="삭제링크" required>
<?
for ($i = 0; $i < sizeof($link_file); $i++) {
$lklist[] = explode(",",chop($link_file[$i]));
if($lklist[$i][1] == $save_url){
echo "<option value=".$lklist[$i][0]." selected>넘버[ ".$lklist[$i][0]." ] 주소[ ".$lklist[$i][1]." ] 링크명[ ".$lklist[$i][2]." ]</option>";
$selected_answer = "y";
$selecred_name = $lklist[$i][2];
}else{
echo "<option value=".$lklist[$i][0].">넘버[ ".$lklist[$i][0]." ] 주소[ ".$lklist[$i][1]." ] 링크명[ ".$lklist[$i][2]." ]</option>";
}
}
if($selected_answer != "y"){
if(strlen($lklist[0][0]) == 0){
echo "<option selected>현재 저장되어져 있는 팝업링크 리스트가 없습니다. 저장해주세요</option>";
}else{
echo "<option selected>현재 저장되어져 있는 팝업링크 리스트를선택후 삭제가능합니다.</option>";
}
}
?>
</select> </td>
<td width="20"></td>
<td width="100" align="center"><input type="submit" name="btn1" id="btn_submit" value="주소삭제" accesskey='s'></td>
</tr></form>
</table>
<?
}
}else{
echo "현재 저장되어져 있는 파일 이 없습니다. 링크를 저장하시면 자동으로 파일이 생성됩니다.^^";
}
?></td>
</tr>
<tr>
<td height="30">
<?
if($selected_answer == "y"){
?>
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td align="center">현재 <font color=red>[<?=$selecred_name?>]</font>라는 링크명으로 현주소<font color=red>[<?=$save_url?>]</font>가 저장되어져 있습니다.</td>
</tr>
</table>
<?
}else{
?>
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="22"> </td>
<td>현재주소 : http://
<?=$save_url?></td>
<td align="right"><table border="0" cellspacing="0" cellpadding="0">
<tr>
<form name="pop_save" method="post" action="javascript:pop_save_check(document.pop_save);" enctype="multipart/form-data" style="margin:0px;">
<td><input type="text" name="popname" id="popname" style="width:160px; background-color:#f6f6f6; border:1px solid #d8d8d5; height:21px;" itemname="링크명" required>
<input name="link_url" type="hidden" value="<?=$save_url?>" /></td>
<td width="20"></td>
<td width="100" align="center"><input type="submit" name="btn2" id="button2" value="주소저장" /></td>
</form>
</tr>
</table></td>
</tr>
</table>
<?
}
?>
</td>
</tr>
</table>
<?
}
?>
<script language="javascript">
<!--
function pop_save_check(f)
{
f.action = "<?=$g4['path']?>/popup_link_updata.php";
f.submit();
}
function dell_check(f)
{
f.action = "<?=$g4['path']?>/popup_link_updata.php";
f.submit();
}
//-->
</script>
========================================================
우선 popup.php 페이지를 먼저 수정했습니다.
=========================================================
<?php
/**
* 팝업관리 프로그램
**/
//현재 주소를 저장합니다. 이때 월드와이드웹이 앞에 붙어 있는지를 검사후 있다면 지워버립니다.
$world = explode(".",$_SERVER['HTTP_HOST']);
// 흑염님의 조언으로 루프로 돌려 3차 4차 도메인 까지 커버..^^
$world_c = sizeof($world);
if($world[0] == "www"){
$world = $world[1];
for($a=2; $a<$world_c; $a++){
$world += ".".$world[$a];
}
}else{
$world = $_SERVER['HTTP_HOST'];
}
$now_url = $world.$_SERVER['REQUEST_URI'];
//이번에는 실제 저장될 주소입니다.
$save_url = $_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'];
// 팝업 대상 목록 가져오기 - 시작 //
$nNow = time();
$szSql = "
SELECT nIdx, nStartDate, nEndDate, nWidth, nHeight, nLeft, nRight , nOptions , szLink
FROM ZOTTA_POPUP
WHERE szView='Y' AND ($nNow BETWEEN nStartDate AND nEndDate)
ORDER BY nIdx asc
";
$input = mysql_query($szSql);
$dataArray = array ();
for ($i = 0; $i < mysql_num_fields($input); $i ++) {
array_push($dataArray, mysql_field_name($input, $i));
}
$fieldArray =$dataArray;
$returnArray = array ();
$onerowArray = array ();
while ($row = mysql_fetch_row($input)) {
for ($j = 0; $j < sizeof($fieldArray); $j ++) {
//$onerowArray = array_merge($onerowArray, array( $fieldArray[$j] => $row[$fieldArray[$j]] ));
$onerowArray = array_merge($onerowArray, array ($fieldArray[$j] => $row[$j]));
}
array_push($returnArray, $onerowArray);
}
$onerowArray = '';
$arrPOP = $returnArray;
//print_r($arrPOP);
// 팝업 대상 목록 가져오기 - 끝 //
# 목록에 따라, 새창 띄우기
for ( $i=0; $i < count($arrPOP); $i++){
if ($arrPOP[$i]["nIdx"])
{
//위와 마찬가지로 월드와이드웹을 빼네어줍니다.
$szlink[$i] = explode(".",$arrPOP[$i]["szLink"]);
// 흑염님의 조언으로 루프로 돌려 3차 4차 도메인 까지 커버..^^
$sZ_c = sizeof($szlink[$i]);
if($szlink[$i][0] == "www"){
$szlink[$i] = $szlink[$i][1];
for($z=2; $z<$sz_c; $z++){
$szlink[$i] = $szlink[$i].".".$szlink[$i][$z];
}
}else{
$szlink[$i] = $arrPOP[$i]["szLink"];
}
if ( $now_url == $szlink[$i] )
{
$cookieName = "zotta_popup_idx".$arrPOP[$i]["nIdx"];
if ($_COOKIE[$cookieName] != "done")
{
$szWidth = $arrPOP[$i][nWidth];
$szHeight = $arrPOP[$i][nHeight] + 27;
$szLeft = $arrPOP[$i][nLeft];
$szRight = $arrPOP[$i][nRight];
$options = $arrPOP[$i][nOptions];
$scrollbar = ($options == "Y") ? "scrollbars=yes" : "scrollbars=no";
$optionsS = $scrollbar.",width=".$szWidth.",height=".$szHeight.",left=".$szLeft.",top=".$szRight.", status=no";
echo "\r\n<script language='javascript'>\r\n\t window.open( '".$g4[path]."/autoPOPUP.php?idx=".$arrPOP[$i]["nIdx"]."', 'popup_nIdx".$arrPOP[$i]["nIdx"]."', '".$optionsS."'); \r\n</script>";
}
}
}
}
//어드민 계정만 볼수 있도록 설정
if ($is_admin == "super" || $is_auth) {
?>
<table width="800" border="0" cellspacing="0" cellpadding="0">
<tr>
<td height="30">
<?
//파일이 있는지 없는지를 검사한다.
$file_search = file_exists($g4['path']."/popup_link_db.txt");
//파일이 존재 한다면
if($file_search){
//데이터를 읽기 형식으로 불러들인다
$link_file = file($g4['path']."/popup_link_db.txt");
//파일이 존재하면
if($file_search){
?>
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<form name="dell" method="post" action="javascript:dell_check(document.dell);" enctype="multipart/form-data" style="margin:0px;">
<input name="edit_url" type="hidden" value="<?=$save_url?>">
<tr>
<td height="21" align="right">
<select name="dell_num" id="popuplist" style="width:660px; background-color:#f6f6f6; border:1px solid #d8d8d5; height:21px;" itemname="삭제링크" required>
<?
for ($i = 0; $i < sizeof($link_file); $i++) {
$lklist[] = explode(",",chop($link_file[$i]));
if($lklist[$i][1] == $save_url){
echo "<option value=".$lklist[$i][0]." selected>넘버[ ".$lklist[$i][0]." ] 주소[ ".$lklist[$i][1]." ] 링크명[ ".$lklist[$i][2]." ]</option>";
$selected_answer = "y";
$selecred_name = $lklist[$i][2];
}else{
echo "<option value=".$lklist[$i][0].">넘버[ ".$lklist[$i][0]." ] 주소[ ".$lklist[$i][1]." ] 링크명[ ".$lklist[$i][2]." ]</option>";
}
}
if($selected_answer != "y"){
if(strlen($lklist[0][0]) == 0){
echo "<option selected>현재 저장되어져 있는 팝업링크 리스트가 없습니다. 저장해주세요</option>";
}else{
echo "<option selected>현재 저장되어져 있는 팝업링크 리스트를선택후 삭제가능합니다.</option>";
}
}
?>
</select> </td>
<td width="20"></td>
<td width="100" align="center"><input type="submit" name="btn1" id="btn_submit" value="주소삭제" accesskey='s'></td>
</tr></form>
</table>
<?
}
}else{
echo "현재 저장되어져 있는 파일 이 없습니다. 링크를 저장하시면 자동으로 파일이 생성됩니다.^^";
}
?></td>
</tr>
<tr>
<td height="30">
<?
if($selected_answer == "y"){
?>
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td align="center">현재 <font color=red>[<?=$selecred_name?>]</font>라는 링크명으로 현주소<font color=red>[<?=$save_url?>]</font>가 저장되어져 있습니다.</td>
</tr>
</table>
<?
}else{
?>
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="22"> </td>
<td>현재주소 : http://
<?=$save_url?></td>
<td align="right"><table border="0" cellspacing="0" cellpadding="0">
<tr>
<form name="pop_save" method="post" action="javascript:pop_save_check(document.pop_save);" enctype="multipart/form-data" style="margin:0px;">
<td><input type="text" name="popname" id="popname" style="width:160px; background-color:#f6f6f6; border:1px solid #d8d8d5; height:21px;" itemname="링크명" required>
<input name="link_url" type="hidden" value="<?=$save_url?>" /></td>
<td width="20"></td>
<td width="100" align="center"><input type="submit" name="btn2" id="button2" value="주소저장" /></td>
</form>
</tr>
</table></td>
</tr>
</table>
<?
}
?>
</td>
</tr>
</table>
<?
}
?>
<script language="javascript">
<!--
function pop_save_check(f)
{
f.action = "<?=$g4['path']?>/popup_link_updata.php";
f.submit();
}
function dell_check(f)
{
f.action = "<?=$g4['path']?>/popup_link_updata.php";
f.submit();
}
//-->
</script>
========================================================

^^
고맙습니다^^/
웹루트가 html/data/webroot/daejeon/docs/2007/ 이렇게 있는데 그누보드가 2007폴더에 깔려있습니다. 도메인은 docs 부터 잡힙니다. docs 폴더에 팝업을 띄울려고 하는데 안되네여..;;
2007폴더를 지정하려면 http://도메인/2007/ 이렇게됩니다.
경로가 문제 있는건가여?
부탁합니다. 도와주세용~
2007폴더를 지정하려면 http://도메인/2007/ 이렇게됩니다.
경로가 문제 있는건가여?
부탁합니다. 도와주세용~

제송한 말씀이지만..ㅠ.ㅠ
그누보드 폴더 박으로 나가면 경로가....
설정 파일들에 경로가 깨지기 때문에 이것저것 손을 많이 보셔야 합니다.
..ㅜ.ㅠ 도아드리지 못해 제송합니다.
그누보드 폴더 박으로 나가면 경로가....
설정 파일들에 경로가 깨지기 때문에 이것저것 손을 많이 보셔야 합니다.
..ㅜ.ㅠ 도아드리지 못해 제송합니다.

멋잇습니다^^ㅋ

Warning: include_once(../lib/cheditor.lib.php) [function.include-once]: failed to open stream: No such file or directory in E:\Lihan\lihan\adm\popup_form.php on line 28
Warning: include_once() [function.include]: Failed opening '../lib/cheditor.lib.php' for inclusion (include_path='.;C:\php5\pear') in E:\Lihan\lihan\adm\popup_form.php on line 28
Fatal error: Call to undefined function cheditor1() in E:\Lihan\lihan\adm\popup_form.php on line 32
이런 오류가 ...
Warning: include_once() [function.include]: Failed opening '../lib/cheditor.lib.php' for inclusion (include_path='.;C:\php5\pear') in E:\Lihan\lihan\adm\popup_form.php on line 28
Fatal error: Call to undefined function cheditor1() in E:\Lihan\lihan\adm\popup_form.php on line 32
이런 오류가 ...
D
예천화님 /ebbs/lib/cheditor.lib.php 파일이 없어서 그럽니다.
아마 cheditor4.lib.php 파일 만 있을 겁니다.
예전 에디터가 적용된 소스에서 찾아 cheditor.lib.php 이파일만 올리시면될 것 같네요
아마 cheditor4.lib.php 파일 만 있을 겁니다.
예전 에디터가 적용된 소스에서 찾아 cheditor.lib.php 이파일만 올리시면될 것 같네요
index.php에 common.php 인클루드 바로 아래 줄에 popup.php를 인클루드 했는데
아래와 같이 메세지가..도와 주세요
Warning: Cannot modify header information - headers already sent by (output started at /home/user/schc/public_html/ddns/popup.php:212) in /home/user/schc/public_html/ddns/head.sub.php on line 32
Warning: Cannot modify header information - headers already sent by (output started at /home/user/schc/public_html/ddns/popup.php:212) in /home/user/schc/public_html/ddns/head.sub.php on line 34
Warning: Cannot modify header information - headers already sent by (output started at /home/user/schc/public_html/ddns/popup.php:212) in /home/user/schc/public_html/ddns/head.sub.php on line 35
Warning: Cannot modify header information - headers already sent by (output started at /home/user/schc/public_html/ddns/popup.php:212) in /home/user/schc/public_html/ddns/head.sub.php on line 36
Warning: Cannot modify header information - headers already sent by (output started at /home/user/schc/public_html/ddns/popup.php:212) in /home/user/schc/public_html/ddns/head.sub.php on line 37
Warning: Cannot modify header information - headers already sent by (output started at /home/user/schc/public_html/ddns/popup.php:212) in /home/user/schc/public_html/ddns/head.sub.php on line 38
아래와 같이 메세지가..도와 주세요
Warning: Cannot modify header information - headers already sent by (output started at /home/user/schc/public_html/ddns/popup.php:212) in /home/user/schc/public_html/ddns/head.sub.php on line 32
Warning: Cannot modify header information - headers already sent by (output started at /home/user/schc/public_html/ddns/popup.php:212) in /home/user/schc/public_html/ddns/head.sub.php on line 34
Warning: Cannot modify header information - headers already sent by (output started at /home/user/schc/public_html/ddns/popup.php:212) in /home/user/schc/public_html/ddns/head.sub.php on line 35
Warning: Cannot modify header information - headers already sent by (output started at /home/user/schc/public_html/ddns/popup.php:212) in /home/user/schc/public_html/ddns/head.sub.php on line 36
Warning: Cannot modify header information - headers already sent by (output started at /home/user/schc/public_html/ddns/popup.php:212) in /home/user/schc/public_html/ddns/head.sub.php on line 37
Warning: Cannot modify header information - headers already sent by (output started at /home/user/schc/public_html/ddns/popup.php:212) in /home/user/schc/public_html/ddns/head.sub.php on line 38
이번에는 이렇게 뜨는데 팝업창은 안떠요.
저장주소를 받았습니다.
- 링크명은 메인 입니다.
- 파일저장 경로는 ./popup_link_db.txt입니다.파일을 생성중입니다. 기다려 주세요..^^
- a+로 파일을 불렀습니다.
- 링크넘버링은 루프넘버와 같습니다.
- 파일에 [0,www.schc.co.kr/ddns/index.php,메인] 내용을 저장중입니다.(첫줄입니다)
- 파일은 생성되어 있지만 안에 데이타가 없어 리스트 넘버링이 1이되는것 을 막기 위해 0번으로 다시 지정해서 저장합니다.
- 파일을 닫았습니다.
- 파일을 다시 열었습니다.
- 파일에 [0,www.schc.co.kr/ddns/index.php,메인] 가 저장되었습니다.
- 파일을 닫았습니다.
링크리스트 맨처음에위치한 링크넘버링의 랭스는 0 입니다.
저장주소를 받았습니다.
- 링크명은 메인 입니다.
- 파일저장 경로는 ./popup_link_db.txt입니다.파일을 생성중입니다. 기다려 주세요..^^
- a+로 파일을 불렀습니다.
- 링크넘버링은 루프넘버와 같습니다.
- 파일에 [0,www.schc.co.kr/ddns/index.php,메인] 내용을 저장중입니다.(첫줄입니다)
- 파일은 생성되어 있지만 안에 데이타가 없어 리스트 넘버링이 1이되는것 을 막기 위해 0번으로 다시 지정해서 저장합니다.
- 파일을 닫았습니다.
- 파일을 다시 열었습니다.
- 파일에 [0,www.schc.co.kr/ddns/index.php,메인] 가 저장되었습니다.
- 파일을 닫았습니다.
링크리스트 맨처음에위치한 링크넘버링의 랭스는 0 입니다.