带有每次迭代 PHP 的下拉列表



all

我在以下方面遇到了小问题:我想制作动态下拉列表,我写了这个:

<select name='categoryID' >
    <?php foreach( $categories as $category)?>
    <option value="<?php echo $category['id']?>"> <?php echo $category['name'] ?></option>
</select>

问题是foreach不能正常工作:只输入1次。我需要标记,当我转储类别列表时,它会显示所有项目。任何建议为什么会发生这种情况?这是制作下拉列表的正确方法吗?

整个代码:http://pastebin.com/RE56KQCY

<?php foreach( $categories as $category): ?>
    <option value="<?php echo $category['id']; ?>"> <?php echo $category['name']; ?></option>
<?php endforeach; ?>

你只得到一行,因为你还没有关闭你的小节。

注意:我发现它非常易于使用short_tags,foreach(/.../): endforeach;

附言

不太确定我是否有权在这里写这个,但我看了你的代码,我注意到几个问题:

1) 您在使用结果的确切文件中与数据库有连接。这可能适合您的情况。不太确定。通常的做法是将逻辑和表示已获取数据的层分开。

2)您正在使用自PHP 5.5.0年以来已弃用的mysql_*

此扩展从 PHP 5.5.0 开始已弃用,并将在 未来。

您可以使用 PDOMySQLi 代替mysql_* .

你忘了为foreach添加括号

<select name='categoryID' >
    <?php foreach( $categories as $category){?>
    <option value="<?= $category['id']?>"> <?= $category['name'] ?></option>
    <?php } ?>
</select>

最新更新