2012-01-21 5 views
0

그것은 쇼 다음과 같은 오류입니다 :문제 해결 "정의되지 않은이 오프셋"오류

Notice: Undefined offset: 1 in C:\xampp\htdocs\evantechbd\secure\content\feature_link_process.php on line 28.

가 왜 오류를 보여입니다 ...? |

$row = explode("|", $_POST['coun_name']); 
$coun_id = $row[1]; // cat_id 
$coun_name = $row[0]; 

if(isset($coun)){ 
    $errors = array();  
    if(empty($coun)) 
    $errors[] = 'Country Name require<br>';    
} 
+2

28 번 라인은 어느 것입니까? –

+0

또한 http://bobby-tables.com/ –

+0

행 - 28을 검토하십시오. $ coun_id = $ row [1]; // cat_id $ coun_name = $ row [0]; – user1161867

답변

0

당신은 아마 대신,이 같은 일을 할 것입니다 :

$errors = array(); 

if(empty($_POST['coun_name'])) 
{ 
    $errors[] = 'Country Name required.'; 
} 
elseif(strpos($_POST['coun_name'], '|') === false) 
{ 
    $errors[] = 'Country Name invalid.'; 
} 
else 
{ 
    list($coun_name, $coun_id) = explode("|", $_POST['coun_name'], 2); 
} 

첫 번째 조건 검사는 사용자가 $_POST['coun_name']에 대한 값을 제출 확인합니다. 두 번째 조건은 값에 '|'가 포함되어 있는지 확인합니다. 캐릭터.

두 조건이 모두 충족되면

, $coun_name$coun_id가 정상적으로 $_POST['coun_name']을 보내고 'explode()에 의해 채워집니다 (나는 간결 list()에 대한 호출에 떨어졌다).

1
$row = explode("|", $_POST['coun_name']); 
$coun_id = $row[1]; // cat_id 
$coun_name = $row[0]; 

은 $ _POST [ 'coun_name] 경우 더있다 : 사람이 말해 줄 수 ... 여기에 코드입니다 $ row [1]이 (가) 정의되지 않았습니다.

+0

회신 해 주셔서 감사합니다. @rauschen. 미안 해요, 이해가 안 돼요, 내 코드에서 무엇이 잘못됐으며 어떻게해야합니까? – user1161867

+0

$ _POST [ 'coun_name']이 (가) emtpy 일 때 문제가 발생한다고 생각합니다. 아무 것도 선택하지 않았습니다.'coun = $ _POST [ 'coun_name'];'이 (가) emtpy 인 경우 나중에 확인하십시오. 확인 중 .. – rauschen