我想用PHP添加和删除菜单中的项目

时间:2010-06-16 11:38:07

标签: php mysql

此菜单需要每天更新。

<html><head></head><body>
<h1> Welcome to Burgerama </h1>

<?php include("menuBuilder.php");
showBurgerMenu();
?>

</body></html>

菜单项存储在数据库中。物品有一个显示区域;如果它打开,该项目应显示在菜单上。菜单一次只显示4或5个“特价”,管理员需要轻松更改菜单项。我想制作一个菜单编辑页面:

<?php include("burger_queries.php");
dbconnect("burger_database");

foreach($menuItem in burger_database)
{
    echo createToggleButton($menuItem);
}
?>

..每个菜单项都有一个切换按钮。理想情况下,按钮将标有菜单项,如果项目为“开”则为蓝色,如果项目为“关闭”则为红色。单击该按钮可在“开”和“关”之间切换

我试图获得一个按钮来对其相应的菜单项执行UPDATE查询。

3 个答案:

答案 0 :(得分:1)

要做到这一点,每个按钮都需要发送一个表格,然后执行脚本,无论是ajax还是常规刷新。对于名为 Field 1 的禁用按钮,html应该是什么样子的一个示例是:

<form id='testform' action='test.php' method='post'>
<input type='hidden' name='who' value='field_1' />
<input type='hidden' name='what' value='enable' />
<div class='disabled' onclick='testform.submit()'>Field 1</div>
</form>

请注意,它有两个隐藏字段,其中包含php代码所需的信息,以了解哪个字段需要操作以及这些操作是什么。另请参阅我已经在div容器中添加了一个类,该类可以使用css进行自定义,以实现所需的红色或蓝色背景颜色。像padding:10px;background-color:red;这样简单的东西应该可以帮到你,尽管你可能想要进一步设计它。要发送我们使用 javascript 的表单,但如果您愿意,可以将div替换为提交按钮。

要测试这是否有效,请将以下代码放在文件的开头:

if(!empty($_POST)){
if(!empty($_POST['who']) && !empty($_POST['what'])){
  switch($_POST['what']){
    case 'enable':
      echo 'Actions to enable field '.$_POST['who'];
    break;
    case 'disable':
      echo 'Actions to disable field '.$_POST['who'];
    break;
  }
}
}

这使您可以在适当的时间执行按钮的更新查询。请注意,如果您不打算使用ajax,则应先刷新页面,然后才能看到更新的效果。

关于如何从php构建html示例,我不会再进一步​​了,因为我假设你有基本的知识并且可以扣除它。

希望它有所帮助,祝你有个美好的一天。

答案 1 :(得分:0)

按钮应提交表单或执行AJAX请求,该请求由PHP脚本处理。表单包含要切换的产品的标识符。然后,该脚本执行更新查询,更新此产品。

答案 2 :(得分:0)

如果我正确理解了这个问题,你的问题是你想要一个按钮来运行一个执行UPDATE查询的方法,这意味着问题是基于HTML的,对吗?

不幸的是,我的PHP很生疏,所以我无法就方法本身给出好的建议,但HTML按钮应该具有(runat="server"除外)属性OnClick="MenuMethod",MenuMethod是UPDATE查询的方法,它应该在你的“burger_queries.php”页面中找到。

此外,最好在按钮中放置AutoPostback="true"属性,以便在按下按钮后菜单会自动更新。