0

我有phpbb论坛,我想在注册页面中添加一个字段...修改是为了让用户能够选择他们的角色..例如成为版主..或成为普通会员或..我是实际上使论坛有点私密,我将用户分组,因此他们对某些论坛的访问受到限制。无论如何,我有 html 模板文件,我想从 php 文件代码中获取下拉菜单列表

这是我的php代码

<?php
include '/blah/config.php';
$con = mysql_connect($dbhost, $dbuser, $dbpasswd);
if(!$con)
{
    die("Couldn't Connect: ".mysql.error());
}

mysql_select_db($dbname, $con);
$result = mysql_query("SELECT group_name FROM phpbb_groups");
$array = array();
while($row = mysql_fetch_array($result))
{
    $array[] = $row[0];
}

mysql_close($con); 

foreach( $array as $group_name)
{
    echo $group_name."</br>"; // I want to put this value in the dropdown list in the html file
}
?>

这是我要编辑的 html 代码的一部分

<dt><label>GroupID:</label></dt>
  <dd><select name="group_id" id="group_id"" tabindex="7" class="autowidth">I want to get the data from php in here</select></dd>

PS:模板文件为html文件,不能重命名为php

4

1 回答 1

0

好的,抱歉最后一个答案,没有在那里阅读您的PS...

这是一个 jQuery 解决方案,使用 JSON 作为 PHP 文件的输出,然后使用异步请求来填写下拉列表。

PHP 代码

// The rest of your code, then output your $array this way
header("Content-type: application/json");
$array = array("banana", "apple", "eggroll");
echo json_encode($array);
die;

您的 HTML(示例)

如果您还没有它,请确保将 jquery 添加到您的 HEAD 中。

<dt><label>GroupID:</label></dt>
<dd><select name="group_id" id="group_id"" tabindex="7" class="autowidth"></select></dd>
<script>
    $(document).ready(function() {
       $.get('sefesf.php', {"q":"1"},  function(data) {
           if(data.length > 0)
           {
                for(var i = 0; i < data.length; i ++)
                {
                    $('select#group_id').append('<option>' + data[i] + '</option>');
                }
           }
       }); 
    });
</script>

如果您不需要发送任何 GET 参数,请务必将 sefesf.php 更改为带有 json 输出的 php 文件,并将 {"q":"1"} 更改为 {}。

于 2012-12-21T15:55:45.267 回答