2013-12-11 31 views
0

接受(名稱)我有2個表,一個叫學校和一個叫學生。裏面學生我有幾列,其中一個是的外鍵school_Id。我也有學校表(即school_Id,name,...)中的幾列。我接受學校的'名稱'從形式。我想在學生表中插入'school_Id'。PHP/mysql,使用外鍵插入(ID)從形式

要選擇 '學校ID' 我用....(* $ SCHNO - 從形式接受 '名')

$sno="SELECT school_Id FROM school where Name='$schno' "; 

$resno = mysql_query($sno) or die("query error".mysql_error()); 

將該值插入到學生表使用:

$sql="insert into student values('$no','$fname','$mname','$lname','$bdate','$age','$sex','$batch','$year','$manam','$mafnam','$resno')"; 
$res=mysql_query($sql) or die("query error".mysql_error()); 

        ..but it isn't working. 
+0

你的問題在哪裏? – daker

+0

在第一個代碼塊中,您只需運行查詢但未獲取結果!請參閱[mysql_fetch_array](http://www.php.net/mysql_fetch_array) – VVLeon

+0

請描述您想要以更簡單的方式提出的問題...可能會添加您收到的錯誤。 –

回答

1
  1. 運行的mysql_query功能後,您必須獲取數據:

    $ sql =「SELECT school_Id FROM school where Name ='$ schno'」;

    $ result = mysql_query($ sql)or die(「query error」.mysql_error());

    $ resno = mysql_fetch_field($ result,0);

  2. 如果是整數,請不要在INSERT查詢中使用引號::'$resno' - >,$resno

  3. 在使用查詢語句之前,請使用mysql_ real_ escape_ string引用您的變量。

  4. 考慮切換到PDO或mysqli,因爲mysql lib已被棄用。