에러 도와주세요...

매출이 오르면 내리는 수수료! 지금 수수료센터에서 전자결제(PG)수수료 비교견적 신청해 보세요!
에러 도와주세요...

QA

에러 도와주세요...

본문

안녕하세요... 뜻하지 않은 오류가 발생해 이렇게 도움을 구합니다...

 

- skin.lib.php 파일은 list.skin.php 코드 상단에 include_once 해주었습니다.


list.skin.php

 

<input type="checkbox" id="wr_4_0" name="wr_4[]" value="사과">

<input type="checkbox" id="wr_4_1" name="wr_4[]" value="수박">

 

<input type="checkbox" id="wr_4_2" name="wr_4[]" value="딸기">

 

위의 대괄호를 추가하니깐 아래와 같은 오류가 발생했습니다... ㅠㅠ

 

Warning: strlen() expects parameter 1 to be string, array given in .... on line 6 

Warning: strlen() expects parameter 1 to be string, array given in .... on line 147 

 

이렇게 떳습니다 ㅠㅠ

 

그 부분의 코드를 가져왔습니다. 

 

skin.lib.php 

 

4~9


$arr_search = array();
for($j = 1; $j < 11; $j++){
	if($_GET["wr_".$j] && strlen($_GET["wr_".$j]) > 0){
		$qstr .= "&wr_".$j."=".urlencode($_GET["wr_".$j]);
	}
 
}

 

145~151


$arr_search = array();
for($j = 1; $j < 11; $j++){
	if(($_GET["wr_".$j] && strlen($_GET["wr_".$j]) > 0 ) || is_array($_GET["wr_".$j])) {
		$arr_search[name][] = "wr_".$j;
		$arr_search[val][] = $_GET["wr_".$j];
	}
}

 

이 부분만 봐서 해결될 문제일까요?

이 질문에 댓글 쓰기 :

답변 3

파라미터 값이 wr_4 는 지금 배열로 넘기는 거거든요

 

그러니까 $_GET[wr_4] 이렇게 사용을 못하구요

 

$_GET[wr_4][0] 이런식으로 사용하셔야 합니다. 

 

그부분에 대한 에러에요. 파라미터 값이 텍스트가 아닌

 

배열 즉 array 로 넘어 오니까 strlen 으로 글자수를 확인 할수가 없는겁니다.

 

배열은 0부터 시작합니다.

 


for($j=0; $j<10; $j++)
{
    $len = strlen($_GET['wr_'.$j]);
 
}

 

이 되겠지요

 


$arr_search = array();
foreach($_GET['wr_4'] as $k => $v) {
    $j = $k + 1;
    $qstr .= "&wr_".$j."=".urlencode($v);
}
$arr_search = array();
foreach($_GET['wr_4'] as $k => $v) {
    $j = $k + 1;
    $arr_search['name'][] = "wr_".$j;
    $arr_search['val'][] = $v;
}
 
답변을 작성하시기 전에 로그인 해주세요.
전체 124,323 | RSS
QA 내용 검색

회원로그인

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