用组合框更新

时间:2011-08-15 17:55:39

标签: php html mysql mysql-management

我有工作插页,工作正常。 我只是在管理面板中构建一个更新页面。 我无法显示屏幕短:(

我需要将已选择的类别显示在作业表中。

让我告诉你桌面细节。这是工作表

    CREATE TABLE IF NOT EXISTS `jobs` (
  `job_id` int(11) NOT NULL AUTO_INCREMENT,
  `job_title` varchar(99) NOT NULL,
  `job_category` int(3) NOT NULL,
  `job_location` varchar(33) NOT NULL,
  `job_country` varchar(33) NOT NULL,
  `job_salary` int(12) NOT NULL,
  `job_reference` varchar(9) NOT NULL,
  `job_contact_name` varchar(9) NOT NULL,
  `job_description` text NOT NULL,
  `job_requirments` text NOT NULL,
  `job_companydetails` text NOT NULL,
  `status` int(2) NOT NULL,
  `date` date NOT NULL,
  `featured` int(1) NOT NULL,
  PRIMARY KEY (`job_id`)
) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=1091 ;

这是类别表

CREATE TABLE IF NOT EXISTS `job_category` (
  `category_id` int(11) NOT NULL AUTO_INCREMENT,
  `category_name` varchar(25) NOT NULL,
  PRIMARY KEY (`category_id`)
) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=16 ;

我只是显示作业表中的数据以进行更新。 但问题是我需要在Combobox中显示JOB CATEGORY。 我认为这很容易就像这样

<select name="job_category">
<?php
$result = mysql_query("SELECT * FROM $category_tbl");
while($row = mysql_fetch_array($result))
{       
echo "<option value=$row[category_id]> $row[category_name] </option>";
}
?>
</select>

但问题是我需要显示作业表中的选定类别名称

2 个答案:

答案 0 :(得分:3)

在while循环中,您可以使用以下内容:

 while($row = mysql_fetch_array($result)) { 
      echo "<option value='$row[category_id]'";
      if($row['category_id'] === $rows['job_category']){
           echo "selected='selected'";
      }
      echo "> $row[category_name] </option>";
 } 

job['job_category']将包含您当前正在显示的作业的类别ID。

希望这有帮助。

答案 1 :(得分:0)

它有一些bug 我刚修好了 看看变化

$result = mysql_query("SELECT * FROM $category_tbl");
    while($row = mysql_fetch_array($result)) 
    { 
  echo "<option value='$row[category_id]'";
  if($row['category_id'] === $rows['job_category'])
      {
       echo "selected='selected'";
  }
  echo "> $row[category_name] </option>";
     } 

感谢你的线索