0

我是 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 数据库中获取“所有”值并将其填充到下拉列表中。所以我写了一个这样的函数。但它不起作用。

而且我认为 count() 函数在这种情况下实际上不起作用。我怎样才能获得mysql数组的最大计数?

或者我可以在不使用函数的情况下做到这一点吗?我已经用谷歌搜索了很长时间,但我找不到任何有用的信息。

谢谢 !

4

2 回答 2

1

你应该像下面这样使用:[返回数组]

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;
}
于 2013-08-15T10:37:58.797 回答
0

你应该试试这个

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>
于 2013-08-15T10:39:05.863 回答