从mysql获取选项值


fetching option values from mysql

我是php和mysql的新手。

我写了下面的函数:

function catOption() {
$maincatfunc_query = mysql_query("SELECT * FROM mainCats ORDER BY id ") or die(mysql_error());
$funcCat = array();
while ($mainCatFunc = mysql_fetch_array($maincatfunc_query)) {
    for ($i = 0; $i < count($maincatfunc_query); $i++) {

        $funcCat[$i] = '<option value="'.$maincatfunc_sorgu['mainCatID'].'">' . $maincatfunc_sorgu['name'] . '</option>';
    }
}
for ($i = 0; $i < count($maincatfunc_query); $i++) {
    return $funcCat[$i];
  }
}

我想从mysql数据库中获取"all"值,并将其填入下拉列表中。所以我写了一个这样的函数。但它不起作用。

我不认为count()函数在这种情况下真的不起作用。如何获取mysql数组的最大计数?。

或者除此之外,我可以在不使用函数的情况下执行此操作吗?。我在谷歌上搜索了很长时间,但找不到任何有用的信息。

谢谢!

您应该使用如下方法:[return array]

function catOption()
{
  $query = mysql_query("SELECT * FROM mainCats ORDER BY id ") or die(mysql_error());
  $arrCat = array();
  while ($row = mysql_fetch_array($query)) {
    $arrCat[] = '<option value="'. $row['mainCatID'].'">'. $row['name'].'</option>';
  }
  return $arrCat;
}

或者这个[返回字符串]

function catOption()
{
  $query = mysql_query("SELECT * FROM mainCats ORDER BY id ") or die(mysql_error());
  $arrCat = "";
  while ($row = mysql_fetch_array($query)) {
    $arrCat .= '<option value="'. $row['mainCatID'].'">'. $row['name'].'</option>';
  }
  return $arrCat;
}

你应该试试这个,

function catOption() {
    $maincatfunc_query = mysql_query("SELECT * FROM mainCats ORDER BY id ") or die(mysql_error());
    while ($mainCatFunc = mysql_fetch_array($maincatfunc_query)) {
            $funcCat .= '<option value="'.$mainCatFunc['mainCatID'].'">' . $mainCatFunc['name'] . '</option>';
    }
        return $funcCat;
    }

像这样使用:

$dropDownData = catOption();

将其放入HTML

<select><?php echo $dropDownData; ?></select>