2014-12-04 4 views
-4

내가 선택한 양식 때문에 오류가 발생합니다. 어떻게하면 내 PHP 파일로 선택 양식을 가져갈 수 있습니까?내 정의되지 않은 색인에 대해이 오류가 발생하는 이유는 무엇입니까?

<select name='md' multiple="yes" size="10"> 
    <optgroup label="Оpel"> 
     <option value="Astra" name='Ast'>Astra</option> 
    </optgroup> 
    <optgroup label="Nissan">   
     <option value="Pulsar" name='Puls'>Pulsar</option> 
     <option value="Almera" name='Alm'>Almera</option> 
    </optgroup> 
    <optgroup label="Honda"> 
     <option value="Civic" name='Civ'>Civic</option> 
    </optgroup>  
    <optgroup label="Audi"> 
     <option value="Q7" name='Q'>Q7</option>     
    </optgroup> 

    <optgroup label="BMW"> 
     <option value="M3" name='M'>M3</option> 
    </optgroup> 
    <optgroup label="Renault"> 
     <option value="Megane" name='Meg'>Megane</option> 
    </optgroup> 
    <optgroup label="Mercedes"> 
     <option value="G-Class" name='G'>G-Class</option> 
    </optgroup> 
</select></br></br> 

Цвят : 
<select name='col' size='5'> 
    <option value='white' name='wh'>Бял</option> 
    <option value='black' name='bl'>Черен</option> 
    <option value='yellow' name='ye'>Жълт</option> 
    <option value='brown' name='br'>Кафяв</option> 
    <option value='grey' name='gr'>Сив</option> 
</select></br></br> 

그리고 내 PHP 코드 :

$md = $_POST['md']; 
$col = $_POST['col']; 

어딘가에 내가 아약스 사용해야합니다 내가 할 것을보고 여기

내 코드? 그게 필요 할까 ?

+1

어떤 색인이 정의되지 않습니까? –

+0

'$ md = (isset ($ _ POST [ 'md']))? $ _POST [ 'md'] : '';'그리고'$ col = (isset ($ _ POST [ 'col']))? $ _POST [ 'col'] : '';'. 천만에요. –

+0

양식 태그를 보여주세요. – SaidbakR

답변

0

if(isset($_POST['md'])){ 
    $md = $_POST['md']; 
}else{ 
    $md = ''; 
} 

if(isset($_POST['col'])){ 
$col = $_POST['col']; 
}else{ 
    $col = ''; 
} 

또는

으로 시도
$md = (isset($_POST['md'])) ? $_POST['md'] : ''; 
$col = (isset($_POST['col'])) ? $_POST['col'] : ''; 
+0

당신은 부끄러워하지 않고 내 대답에서 삼항 연산자를 복사 했습니까? –

+0

아, 그리고 주 응답에'else {'부분도 있습니다. –

+0

내 대답이 내 대답을 복사 한 것인지, 내 대답을 복사했는지는 모르겠다. 다른 사람들의 대답을 복사하는 동안 당신은 뻔뻔스러워해야합니다. –

0

귀하의 PHP 코드는 "공지 사항 : 정의되지 않은 인덱스를 ..."보여줍니다, 당신은 선택 상자에서 선택한 아무것도하지 않기 때문에, 때 먼저 파일을 엽니 다.

if (isset($_POST['md']) { 
    $md = $_POST['md']; 
} else { 
    $md = ''; 
} 
if (isset($_POST['col']) { 
    $col = $_POST['col']; 
} else { 
    $col = ''; 
} 

을 또는 당신은 짧은 솔루션으로 삼항 연산자를 사용할 수 있습니다 : 그것을 방지하기 위해, if (isset(...))를 사용

$md = (isset($_POST['md'])) ? $_POST['md'] : ''; 
$col = (isset($_POST['col'])) ? $_POST['col'] : ''; 
0

을 내가 여러 선택을위한 배열 변수를 받고 생각하기 때문에. 배열을 사용하여 데이터를 저장하십시오. 이와 같이

<label for="aoi">Area of Interest:</label> 
     <select id="sel_aoi" name="aoi[]" multiple="multiple"> 
     <option value="hr-executive">HR Executives</option> 
     <option value="sr-manager">Sr. Manager</option> 
     <option value="service-advisor">Service Advisor</option> 
     <option value="production">Production Engineer</option> 
     <option value="mechanical">Mechanical Engineer</option> 
     </select> 


    $aoi = implode(',', $_POST['aoi']); 
관련 문제