원래 사이트에서 로컬로 파일 이동하고나서 사이트 들어가니 이런 메시지가 나와요

매출이 오르면 내리는 수수료! 지금 수수료센터에서 전자결제(PG)수수료 비교견적 신청해 보세요!
원래 사이트에서 로컬로 파일 이동하고나서 사이트 들어가니 이런 메시지가 나와요

QA

원래 사이트에서 로컬로 파일 이동하고나서 사이트 들어가니 이런 메시지가 나와요

본문

 


Fatal error: Cannot redeclare array_map_deep() (previously declared in C:\xampp\htdocs\g1\common.php:54) in C:\xampp\htdocs\g1\lib\common.lib.php on line 26 

이런 메시지가 나와서

이 파일의 26번째 줄 보면 소스가 이렇게 적혀 있는데

뭐가 문제 있는거죠?

 

        $str .= '<a href="'.$url.'1'.$add.'" class="pg_page pg_start">처음</a>'.PHP_EOL; 

 

그리고 db 콘피그 파일 SQL 사이트 주소 등 정보는 수정 했어요

 

원래 사이트 FTP에서 데이타 폴더에서 파일 몇개 안옴겨진게 있는데
그게 문제가 있는걸까요?

이 질문에 댓글 쓰기 :

답변 2

방금 파일 다시 실행해보니 위에 소스가 더 늘어났네요.. 56번째 줄에 저게 있고 
25 26번째 줄에
return $array;
}
이게 있어요
 

 

<?php
if (!defined('_GNUBOARD_')) exit;

/*************************************************************************
**
** 일반 함수 모음
**
*************************************************************************/

// multi-dimensional array에 사용자지정 함수적용
function array_map_deep($fn, $array)
{
if(is_array($array)) {
foreach($array as $key => $value) {
if(is_array($value)) {
$array[$key] = array_map_deep($fn, $value);
} else {
$array[$key] = call_user_func($fn, $value);
}
}
} else {
$array = call_user_func($fn, $array);
}

return $array;
}

// SQL Injection 대응 문자열 필터링
function sql_escape_string($str)
{
$pattern = '/(and|or).*(union|select|insert|update|delete|from|where|limit|create|drop).*/i';
$replace = '';

$str = preg_replace($pattern, $replace, $str);
$str = call_user_func(G5_ESCAPE_FUNCTION, $str);

return $str;
}

// 마이크로 타임을 얻어 계산 형식으로 만듦
function get_microtime()
{
list($usec, $sec) = explode(" ",microtime());
return ((float)$usec + (float)$sec);
}

// 한페이지에 보여줄 행, 현재페이지, 총페이지수, URL
function get_paging($write_pages, $cur_page, $total_page, $url, $add="")
{
//$url = preg_replace('#&page=[0-9]*(&page=)$#', '$1', $url);
$url = preg_replace('#&page=[0-9]*#', '', $url) . '&page=';

$str = '';
if ($cur_page > 1) {
$str .= '<a href="'.$url.'1'.$add.'" class="pg_page pg_start">처음</a>'.PHP_EOL;

 

 

함수모음이라는 주석 아래에  function array_map_deep()이라는 함수 있잖아요 그걸 지우는 겁니다
덮어쓰기는 어떻게 하느냐구요?
ftp로 같은 화일을 업로드하면 덮어쓰기가 되는거죠

함수가 무언지 덮어쓰기를 어떻게 하는지를 모르고서 홈페이지를 무슨 재주로 만들었는지...

그냥 덮어쓰기라고 그러니 모르는거죠
파일 복사해서 하는건 할줄 알져
근데 그거해도 똑같아서 질문을 하는거에요
원래 사이트에선 이 소스로 되어있고 그대로 복사해서 가져온건데
로컬에서만 이렇게 오류가 나와서요

그리고 최신버전이라 그래서 프로그램이면 업데이트가 있으면 하는데
이건 업데이트 자체가 없으니...

function array_map_deep($fn, $array)를

지우면 이런 메시지가 나와요 Fatal error: Cannot redeclare sql_escape_string() (previously declared in C:\xampp\htdocs\g1\common.php:73) in C:\xampp\htdocs\g1\lib\common.lib.php on line 37

또 지우면
MYSQL 에러라고 나오구요...

최신버젼에서는 common.lib.php에서 저 함수 common.php로 옮겨졌는데 소스 버젼이 섞여있나보군요
이게 무슨 말이죠??
이 최신 버전은 또 무슨말인지.. 그누보드 최신버전이라는건지 아님
php라는건지 정말 php파일 하나에는 버전이 따로 있는게 아닌데 최신버전이라 그러니 뭐라는지 모르겠어요
php를 업뎃 하라는건가요? 그누보드를 업뎃 하라는건가요..
그누보드라면 최신버전인데..
common.php이 파일은 아예 없는데 어디 있다는건가요...

array_map_deep() 함수가 중복으로 즉 같은 함수가 두번 설정되어있다는 말입니다만

common.lib.php  26번행에 그런 함수가 들어있을 턱이없습니다

그누코드가 그렇게되어있다면 누구에게나 같은 에러가 나와야할테죠

common.lib.php를 최신버전으로 덮으쓰기 해보세요

 

 

 

답변을 작성하시기 전에 로그인 해주세요.
전체 429
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT