在菜单系统中重新排序页面

时间:2012-02-21 14:24:34

标签: php mysql

我写了一大堆代码,旨在重新排序页面。

<form action="process.php" method="post" />
<?php
$apageid = array();
$apagename = array();
$q = "SELECT g.id, g.title, n.order FROM tbl_general g INNER JOIN tbl_navigation n ON n.pageid = g.id WHERE n.type = '$_SESSION[parent]'";
$return = $database->query($q);
while($row=mysql_fetch_assoc($return)){
    $apageid[] = $row['id'];
    $apagename[] = $row['title'];
    $apageorder[] = $row['order'];
}

$count = count($pageid);

$bpageid = array();
$bpageorder = array();

//run through each page one at a time and update the order of the menu
for($i=0; $i++; $i<$count){
//set a few variables
$pid = $pageid[$i];
$porder = $pageorder[$i];

?>
<select name="<?php $bpageid[$i] ?>">
    <?php
    for($j=0; $j++; $j<$count){
        ?>
        <option value="<?php $apageid[$j] ?>"><?php echo $apagename[$j]; ?></option>
        <?php
    }
    ?>
</select>
<select name="<?php $bpageorder[$i] ?>">
    <?php
    for($j=0; $j++; $j<$count){
        ?>
        <option value="<?php $apageorder[$j] ?>"><?php echo $apageorder[$j]; ?></option>
        <?php
    }
    ?>
</select>
<?php
}
?>
<input type="submit" name="navigation" value="Reorder pages" />
</form>

例如,如果有7个菜单项,则代码应遍历所有7个和显示7个下拉框,每个下拉框中包含7个选项。每个下拉列表旁边应该是数字1-7,它们是框的顺序。这将允许每个下拉菜单选择一个菜单项并为其分配订单号。

当然,提交脚本时,我会验证两个项目不会发生冲突等。

除了提交按钮之外,代码当前没有显示任何内容。

有人能看到我遇到的问题吗?

由于

1 个答案:

答案 0 :(得分:0)

这里$count可能为零,因为永远不会定义$pageid

$count = count($pageid);

另外,为什么要为id,title和order保留三个不同的数组?如果您在多维数组上拥有所有内容并使用foreach循环而不是for,那么可能会更清楚。