2012-04-05 2 views
0

사용자가 등록 할 때 양식을 작성하는 양식이 있습니다. 모든 등록은 "등록"테이블에 저장됩니다. 테이블 구조는 다음과 같습니다 :
ID, 사용자 이름, 암호, 이름, 성, 이메일, 성별, 직책, f1, 국가, f2, fbook, f3, fmovie, f4.양식 제출시 다른 테이블에서 데이터 검색

jobtitle, 국가, fbookfmovie은 드롭 다운 메뉴입니다. 드롭 다운 메뉴의 값은jobtitle, f1, country, f2, fbook, f3, fmovie, f4와 같은 "extrainfo"라는 다른 테이블에도 저장됩니다.

사용자가 양식을 제출하면 jobtitle, country, fbook 및 fmovie 필드의 값을 확인하고 "extrainfo"테이블에서 값을 검색해야합니다.

사용자가 jobtitle 드롭 다운 메뉴에서 "DECORATOR"를 선택하면 "extrainfo"테이블의 f1 열에서 값을 가져 와서 "registration"테이블의 f1 열에 값을 삽입해야합니다.

어떻게하면됩니까?

+1

당신은 아무것도를 시도 : 당신이 먼저 배열의 정보를 읽으면 당신은 또한 <OPTION>...</OPTIONS>를 구축하기 위해 foreach 구조를 사용할 수있다? – nithi

답변

0

제출 된 값을 읽고 데이터가 일치하는 행을 선택하여 SQL 쿼리를 사용하여 데이터베이스의 데이터와 비교하면됩니다.

+0

예를 들어 주시겠습니까? 미리 감사드립니다 – Dreni

+0

예를 들어 무엇을? 선택 쿼리를 실행하는 방법? 물론, 매뉴얼에 있습니다 : [SELECT Syntax (MySQL)] (http://dev.mysql.com/doc/refman/5.5/en/select.html) – hakre

0

양식 제출 후

$r = mysql_query("select f1 from extrainfo where jobtitle='$jobtitle'); //get f1 from extrainfo 
$j = mysql_fetch_row($r); 

모두에 대해이 같이 등록 테이블에 삽입 ExtraInfo를에서 값을 가져 오기 $ _POST

$jobtitle = $_POST['jobtitle']; //name of select box is assumed as jobtitle 

에 의해 선택 상자의 값을 가져옵니다이

같은 시도 열

mysql_query("insert into registration(f1)values('$j[0]')"); //insert the f1 into registration table 
0

당신은 단지 그들에 이미 값으로 드롭 다운을 구축보다는 나중에 그들을 볼 수 있었다 :

f1_value 각 jobtitle에 대한 extrainfo 테이블에서 값입니다
<SELECT name="jobtitle"> 
    <OPTION value="f1_value">Decorator</OPTION> 
    <OPTION value="f1_value">Welder</OPTION> 
</SELECT> 

.

<?php 
$q="select * from extrainfo"; 
if ($r=mysql_query($q)) 
{ 
    $m=array(); 
    while ($row=mysql_fetch_assoc($m)) 
    { 
    $m[]=$row; 
    } 
?> 
<SELECT name="jobtitle"> 
<?php 
    foreach ($m as $line) 
    { 
    echo '<OPTION value="'.$line['f1'].'">'.$line['jobtitle'].'</OPTION>'; 
    } 
?> 
</SELECT>